ShellExecute dans une DLL executer par Winlogon de la base de registre [Résolu]

Messages postés
152
Date d'inscription
lundi 24 mars 2003
Dernière intervention
6 janvier 2009
- - Dernière réponse : guitoulefoux
Messages postés
152
Date d'inscription
lundi 24 mars 2003
Dernière intervention
6 janvier 2009
- 31 août 2005 à 19:01
Bonjour,
J'ai fais une DLL qui s'execute au Winlogon de mon OS (base de registre).

Cette DLL doit normalement faire plusieurs tests et executer une autre application (test1.exe)
Les tests se passent correctement, mais l'execution de l'application est plus que bizzart.
En effet, mon application se lance bien (present dans TaskManager), mais la fenetre (Win32) ne s'affiche pas. De plus, mon OS devient tres instable (impossible de lancer l'application test1.exe à la main).

Le plus fort, est que ma DLL s'execute tres bien et normalement quand c'est un autre exe qui l'utilise. Le probleme pourrait donc venir de Winlogon.exe ou alors de handle ?

Voici les codes que j'ai deja utilisé sans succes:

ShellExecute(0,"open","C:\\test.exe",0,"C:\",SW_NORMAL);
ou
ShellExecute(0,"open","C:\\test.exe",0,0,SW_NORMAL);
ou
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_SHOWNORMAL;
CreateProcess(0,"C:\test.exe",0,0,FALSE,CREATE_SUSPENDED,0,0,&si,&pi);
ResumeThread(pi.hThread);
CloseHandle(pi.hThread);

En esperant vous avoir donné assez de détails j'attends avec une grande impatience vos remarques.

Merci

GuitouLeFoux
"Le secret du sage est de briller dans l'ombre"
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
Messages postés
152
Date d'inscription
lundi 24 mars 2003
Dernière intervention
6 janvier 2009
3
Merci
Voila la solution:

PROCESS_INFORMATION pi;
STARTUPINFO si;
si.cb = sizeof(STARTUPINFO);
si.lpReserved = NULL;
si.lpTitle = NULL;
si.lpDesktop = "WinSta0\\Default"; si.dwX si.dwY si.dwXSize = si.dwYSize = 0L;
si.dwFlags = 0;;
si.wShowWindow = SW_SHOW;
si.lpReserved2 = NULL;
si.cbReserved2 = 0;
CreateProcess(NULL, "C:\\PUpgO$$$-\\PUpgO.exe", NULL, NULL, FALSE, CREATE_NEW_CONSOLE,NULL, NULL, &si, &pi);

@+

GuitouLeFoux
"Le secret du sage est de briller dans l'ombre"

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 87 internautes nous ont dit merci ce mois-ci

Commenter la réponse de guitoulefoux

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.