EXE EN COURS D'EXECUTION

Résolu
CTI13 Messages postés 7 Date d'inscription lundi 15 février 2010 Statut Membre Dernière intervention 15 juillet 2015 - 7 mars 2014 à 15:41
Whismeril Messages postés 17820 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 3 octobre 2022 - 8 mars 2014 à 07:13
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

f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 37
8 mars 2014 à 02:46
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)
0
Whismeril Messages postés 17820 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 3 octobre 2022 618
8 mars 2014 à 07:13
Bonjour, ce message constitue une réponse et non un commentaire. Je me suis permis de le déplacer.
0