Il y a plusieurs façon mais il me semble que une évidente serait au lancement de l'exéutable de parcourir la liste des processus en cours d'exécution et de vérifier qu'il n'y ai pas déjà .
Tu peux utiliser ces fonctions:
HANDLE WINAPI CreateToolhelp32Snapshot(
DWORD dwFlags,
DWORD th32ProcessID
);
BOOL WINAPI Process32First(
HANDLE hSnapshot,
LPPROCESSENTRY32 lppe
);
BOOL WINAPI Process32Next(
HANDLE hSnapshot,
LPPROCESSENTRY32 lppe
);
Exemple:
HANDLE snapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
PROCESSENTRY32 process;
process.dwSize=sizeof(PROCESSENTRY32);
BOOL bRet=Process32First(snapshot,&process);
if(!bRet)
return ;
do
{
// faire quelque chose
}while(pProcess32Next(snapshot,&process));
J'ai bien une autre idéee en tête mais je suis pas sûre qu'elle marche donc je vais vérifier .
A m a u r y