Bonjour,
Sur XP Pro, il y a une commande "RUNAS" qui permet de lancer un programme avec les autorisations d'un certain utilisateur.
Il y a t-il une fonction que je pourrais utiliser pour lancer un exe comme le fait "RUNAS" ?
Merci d'avance.
Bonjour,
Sur XP Pro, il y a une commande "RUNAS" qui permet de lancer un programme avec les autorisations d'un certain utilisateur.
Il y a t-il une fonction que je pourrais utiliser pour lancer un exe comme le fait "RUNAS" ?
Merci d'avance.
Voir CreateProcessWithLogonW ou LogonUser + CreateProcessAsUser.
CreateProcessAsUser() ne peut être utilisé que dans un service (seul L'utilisateur LocalSystem peut s'en servir. À contrario, LocalSystem ne peut pas utiliser CreateProcessWithLogonW()). Par contre, je n'ai pas testé la troisième fonction de création, CreateProcessWithTokenW(), qui possède peut-être les avantages des deux...
Bonjour,
Merci à tous les deux pour vos informations.
Pour ma part la fonction CreateProcessWithLogonW convient très bien à ce que je veux faire.
Par ailleurs MSDN m'a donné un exemple concret de réalisation !
http://msdn.microsoft.com/library/de...withlogonw.asp
Merci et à bientôt.
Jag.
CreateProcessAsUser peut être utilisé en dehors d'un service, il faut que l'utilisateur ai un privilège particulier pour s'en servir:
Replace a process level token
Et par défaut, ce privilège n'est accordé qu'à LocalSystem, un utilisateur dont les seuls processus sont (normalement) des services.
CQFD, même si je reconnais que c'est une simplification.
Partager