Eteindre/redémarrer/sortie de session........ de l'ordi sur tt les os !!!

Soyez le premier à donner votre avis sur cette source.

Vue 5 831 fois - Téléchargée 813 fois

Description

Ce code permet de redémmarer, eteindre sortire session....... sur tous les systemes d'exploitation, mais sans utiliser de dll genre rundll32 ou SendKeys Alt F4..............

Tres utiles a mon gout, laissez vos commentaires svp.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_JoBleu
Messages postés
91
Date d'inscription
dimanche 18 août 2002
Statut
Membre
Dernière intervention
21 février 2015
-
Les liens dans le fichier projet sont restés inchangés, mais admettons, chacun les corrigera pour soi.

Intéressant, comme interface. On a le temps de changer d'avis avant que le redémarrage se fasse, j'ai même diminué le délai.

Il reste que sous Windows 98 SE ça ne paraît pas si évident de faire redémarrer la machine. On profite de ton programme pour ouvrir la question ?
J'avais une icône pour arrêter la machine, et ça fonctionne bien (surtout depuis que j'ai chargé le complément Microsoft pour la fermeture de Windows, fiche 4758), avec comme code
C:WINDOWSRUNDLL.EXE user.exe,ExitWindows 1

J'avais beau remplacer le 1 par autre chose, j'obtenais le même résultat. En regardant ton programme j'ai pu corriger la deuxième icône, pour obtenir un redémarrage à chaud de Windows (déconnexion)
C:WINDOWSRUNDLL.EXE user32.DLL,ExitWindowsEx 3, FFFF

J'imagine qu'on peut critiquer le dernier paramètre, mais ça marche, à ceci près qu'un mot de passe m'est demandé, bien que l'ouverture de session réseau principale sélectionnée à partir de la boîte de dialogue réseau du panneau de configuration soit "Ouverture de session Windows", et que donc en partant d'une machine arrêtée on ne me demande pas de mot de passe.

Je récapitule : avec ExitWindows, la machine est arrêtée ; avec ExitWindowsEx, la session est close et on repart (avec hélas une demande de mot de passe intempestive). Mon Windows 98 SE refuse de tenir compte du paramètre qui est derrière (apparemment il ne sait pas que d'après la doc, le paramètre joue un rôle).

Pour réellement redémarrer complètement la machine, jusqu'à présent je n'ai que le menu démarrer, commande Arrêter. Il doit bien y avoir une commande qu'on peut intégrer dans un programme ?
Arkeur
Messages postés
9
Date d'inscription
vendredi 17 mai 2002
Statut
Membre
Dernière intervention
6 mars 2003
-
j'ai oublié... Parceke, "TheHacker", je site : "...mais sans utiliser de dll genre rundll32 ou SendKeys Alt F4.............."

Kan tu démarres ton PC, les API se trouvent déjà en mémoire ou il faut les lire dans un fichier (une dll ) pour que kernel32 les chargent ?... Cogites, le hacker, cogites...

++
bestfraggeur
Messages postés
55
Date d'inscription
dimanche 22 octobre 2000
Statut
Membre
Dernière intervention
13 décembre 2003
-
mais bravo pour le piti cod
cs_tuner
Messages postés
2
Date d'inscription
lundi 23 juin 2003
Statut
Membre
Dernière intervention
14 octobre 2003
-
Pas trés interressant comme source, surtout kan elle est repompé tout net depuis la base de donnée de microsoft...
M'enfin bon, si quelqu'un connais un réel moyen de forcer l'extinction de windows (au moins a partir de 95) quelque soit l'environnement logiciel actif, je suis preneur car les astuces avec des sendkeys ne marche pas dans tous les cas mais je ne comprends pas pourquoi... Kan aux API, je ne parviens pas a les faire tourner correctement sur plusieurs plate-formes...
thierrydelepine
Messages postés
521
Date d'inscription
mardi 24 décembre 2002
Statut
Membre
Dernière intervention
11 septembre 2008
4 -
Sans API tu dis ????????

et c'est quoi ça ????

Private Declare Function SetWindowPos Lib "user32"
Private Declare Function ExitWindowsEx Lib "user32"
Private Declare Function GetLastError Lib "kernel32" () As Long
Private Declare Function GetVersion Lib "kernel32"
Private Declare Function GetCurrentProcess Lib "kernel32"
Private Declare Function OpenProcessToken Lib "advapi32"
Private Declare Function LookupPrivilegeValue Lib "advapi32"
Private Declare Function AdjustTokenPrivileges Lib "advapi32"
Private Declare Sub SetLastError Lib "kernel32"

Si ça se ne sont pas des déclarations d'API, alors c'est quoi ?????

A part ça le code est très interessant, je pense que tu l'a pompé mais que tu ne l'a pas trop compris.

en tout cas sympa de poster ce code pour les autres, ne prend pas mal mon post mais c'était juste pour corriger une erreur dans ton commentaire.

Bonne prog.

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.