2016-04-13 28 views
5

Für mein NSIS-Deinstallationsprogramm möchte ich prüfen, ob ein Prozess läuft. FindProcDLL funktioniert nicht unter Windows 7 x64, also habe ich nsProcess ausprobiert.NSIS - prüfen, ob ein Prozess existiert (nsProcess funktioniert nicht)

ich die Version 1.6 von der Website heruntergeladen haben: http://nsis.sourceforge.net/NsProcess_plugin

Wenn ich die nsProcessTest.nsi im Beispiel Ordner starten, erhalte ich folgende Fehler:

Section: "Find process" ->(FindProcess) 
!insertmacro: nsProcess::FindProcess 
Invalid command: nsProcess::_FindProcess 
Error in macro nsProcess::FindProcess on macroline 1 
Error in script "C:\Users\Sebastian\Desktop\nsProcess_1_6\Example\nsProcessTest.nsi" on line 14 -- aborting creation process 

Dies ist Zeile 14 das Beispielskript:

${nsProcess::FindProcess} "Calc.exe" $R0 

Weiß jemand, was falsch ist? Wie kann ich prüfen, ob ein Prozess mit NSIS läuft?

+0

Für den Kompilierungsfehler haben Sie nsProcess.nsh in Include-Verzeichnis von NSIS installiert Ordner? Gleiches für nsProcess.dll Datei? Ich benutze nsProcess FindProcess und KIllProcess unter Win7 x64 ohne Probleme. – hypheni

Antwort

6

NSIS findet das Plug-in nicht. Stellen Sie daher sicher, dass Sie die Dateien in den richtigen Ordner kopiert haben.

NSIS 2.x:

NSIS/ 
├── Include/ 
│ └── nsProcess.nsh 
└── Plugins/ 
    └── nsProcess.dll 

NSIS 3.x:

NSIS/ 
├── Include/ 
│ └── nsProcess.nsh 
└── Plugins/ 
    ├── x86-ansi/ 
    │ └── nsProcess.dll 
    └── x86-unicode/ 
     └── nsProcess.dll 

Die Datei innerhalb Plugins\x86-unicode ist nsProcessW.dll für die es übermäßig zu nsProcess.dll (Schuld der Autor umbenannt kompliziert !)

Allgemeiner, siehe t o How can I install a plugin? im NSIS-Wiki.

+0

Sollte es nicht 'Include', nicht' Includes' sein? – ivokosir

+1

@ivokosir Danke, reparierte meine Antwort – idleberg