EXE EN COURS D'EXECUTION [Résolu]

Signaler
Messages postés
7
Date d'inscription
lundi 15 février 2010
Statut
Membre
Dernière intervention
15 juillet 2015
-
Messages postés
14784
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
27 septembre 2020
-
Bonjour,

Je souhaite savoir si un exe est en cours d'exécution lors de la désinstallation avec INNOSETUP. Existe-t-il une fonction en delphi 7.
Par avance merci
Cordialement

1 réponse

Messages postés
4202
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
13 juin 2020
32
function IsAppRunning(const FileName : string): Boolean;
var
FSWbemLocator: Variant;
FWMIService : Variant;
FWbemObjectSet: Variant;
begin
Result := false;
FSWbemLocator := CreateOleObject('WBEMScripting.SWBEMLocator');
FWMIService := FSWbemLocator.ConnectServer('', 'root\CIMV2', '', '');
FWbemObjectSet := FWMIService.ExecQuery(Format('SELECT Name FROM Win32_Process Where Name="%s"',[FileName]));
Result := (FWbemObjectSet.Count > 0);
FWbemObjectSet := Unassigned;
FWMIService := Unassigned;
FSWbemLocator := Unassigned;
end;

Ensuite il suffit de regarder l'aide InnoSetup pour l'execution de fonction, tu devra surement faire une DLL (de mémoire)
Messages postés
14784
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
27 septembre 2020
437
Bonjour, ce message constitue une réponse et non un commentaire. Je me suis permis de le déplacer.