Ho letto il post seguente. Il mio codice è esattamente lo stesso, ma non funziona:Come verificare con inno-setup, se un processo è in esecuzione su Windows 2008 r2 a 64 bit?
Inno Setup Checking for running process
ho copiato l'esempio da http://www.vincenzo.net/isxkb/index.php?title=PSVince
Ma l'esempio doe non sta funziona nemmeno, anche se cambio il codice come questo:
[Code]
function IsModuleLoaded(modulename: AnsiString): Boolean;
external '[email protected]:psvince.dll stdcall';
Il codice restituisce sempre false (il programma non è in esecuzione, anche se è in esecuzione). Testet su Windows 2008 R2 e Windows 7
Infatti, voglio controllare, se il tomcat5.exe è in esecuzione o meno. Quindi penso di non poter lavorare con un AppMutex.
Qualche idea?
UPDATE ho visto https://code.google.com/p/psvince/source/detail?r=5 ma non riesco a trovare nessuna fatti circa la compatibilità di tale DLL.
CODICE iss Completa:
[Setup]
AppName=PSVince
AppVerName=PSVince 1.0
DisableProgramGroupPage=true
DisableStartupPrompt=true
OutputDir=.
OutputBaseFilename=testpsvince
Uninstallable=false
DisableDirPage=true
DefaultDirName={pf}\PSVince
[Files]
Source: psvince.dll; Flags: dontcopy
[Code]
function IsModuleLoaded(modulename: AnsiString): Boolean;
external '[email protected]:psvince.dll stdcall';
function InitializeSetup(): Boolean;
begin
if(IsModuleLoaded('notepad.exe')) then
begin
MsgBox('Running', mbInformation, MB_OK);
Result := false;
end
else
begin
MsgBox('Not running', mbInformation, MB_OK);
Result := true;
end
end;
chiesto anche sui [Inno newsgroup Setup] (http://news.jrsoftware.org/read/article.php?id=95589&group=jrsoftware.innosetup#95589). – Deanna
Sì, è giusto. Grazie per la tua risposta usenet. Avevo già visto r5-commit di psvince, ma non sono riuscito a trovare informazioni sulla compatibilità. –
Deanna Ho provato il Bugfix da r5-commit di psvince. In effetti, crea un IsModuleLoaded ("app.exe") o IsModuleLoaded2 ("app.exe") "e sembra funzionare. se lo inviassi come risposta, lo accetterò. –