Fonction qui fonctionne sous XP mais pas sous Vista

[Résolu]
Signaler
Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014
-
Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014
-
Bonjour

J'avais fais une petite appli pour eteindre le PC. Je viens de passer sous Vista et celle-ci ne fonctionne plus.

Private declare Function ExitWindowsEx Lib "user32" (ByVal dwoptions As Long, ByVal dwReserved As Long) As Long

ExitWindowsEx(1, 0)

Cette fonction n'existe t'elle plus sous Vista ? L'appli ne retourne pourtant pas d'erreur, simplement rien ne se passe...

Quelqu'un a une idée?
Merci d'avance

5 réponses

Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
MSDN aussi !

quand on utilise une API, qu'on ai ou non un soucis, d'ailleurs, un bon reflex est d'aller voir sa doc sur MSDN

ca évite de chercher, de tourner en rond, ou de poser des questions qui y ont leur réponse....
http://msdn2.microsoft.com/en-us/library/aa376868.aspx

par exemple:
"To shut down or restart the system, the calling process must use the AdjustTokenPrivileges function to enable the SE_SHUTDOWN_NAME privilege. For more information, see Running with Special Privileges."

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Google est ton ami...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014

J'y avais déjà jeté un oeil mais mon niveau en anglais m'a vite découragé:( Mais avec un peu d'acharnement je devrais y arriver...

Il y a donc des chances pour que ce soit un problème de droits. Je vais chercher de ce côté là.

Merci
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
 Bonjour,

Le shutdown existe aussi avec le wmi.

For Each objOperatingSystem in GetObject("winmgmts:{(Shutdown)}").ExecQuery _
                               ("Select * from Win32_OperatingSystem")
    ObjOperatingSystem.Win32Shutdown(1)
Next

jean-marc
Messages postés
414
Date d'inscription
lundi 19 juillet 2004
Statut
Membre
Dernière intervention
23 septembre 2014

Désolé je suis pas encore très compétent en VB...
Pourquoi une boucle?