Programmieren - alles kontrollieren 4.941 Themen, 20.715 Beiträge

Áus einem Visual-C++ - Programm heraus Windows beenden

dav / 5 Antworten / Baumansicht Nickles

Wie kann ich aus einem Microsoft Visual C++ Programm Windows herunterfahren? Ich arbeite mit der Version 6 von Microsoft Visual Studio Enterprise Edition.

bei Antwort benachrichtigen
thomas woelfer dav „Áus einem Visual-C++ - Programm heraus Windows beenden“
Optionen

Mit ExitWindowsEx() oder ExitWindows()

WM_HOPETHISHELPS

this posting contains no tpyos.
bei Antwort benachrichtigen
Style dav „Áus einem Visual-C++ - Programm heraus Windows beenden“
Optionen

Hier mal ein Beispiel für dich !
DWORD res;
ExitWindowsEx(EWX_FORCE|EWX_SHUTDOWN,res);
//fährt den Rechner runter und flushed die buffer
//es gibt auch noch EWX_LOGOFF,EWX_REBOOT,EWX_POWEROFF

Dies gilt bis win2000.. ab 2000 musst du dir ne berechtigungsroutine schreiben . ungefähr so :

HANDLE hToken;
TOKEN_PRIVILEGES tkp;
OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken);
LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid);
tkp.PrivilegeCount=1;
tkp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken,false,&tkp,0,(PTOKEN_PRIVILEGES)NULL,0);


hoffe ich konnte dir weiterhelfen =)

mfg marcus

bei Antwort benachrichtigen
dav Nachtrag zu: „Áus einem Visual-C++ - Programm heraus Windows beenden“
Optionen

Danke!

bei Antwort benachrichtigen
dav Nachtrag zu: „Áus einem Visual-C++ - Programm heraus Windows beenden“
Optionen

Das check ich aber noch nicht so ganz!
Für was brauch ich die benachrichtigungsroutine, bzw. muss ich den ExitWindowsEx()noch verwenden, wenn nicht, wie kann ich dann festlegen, wass geschieht(Logoff, Windows herunterfahren,...)

dav

bei Antwort benachrichtigen
dav Nachtrag zu: „Áus einem Visual-C++ - Programm heraus Windows beenden“
Optionen

Wäre froh, wenn wer antwortet

bei Antwort benachrichtigen