ExitWindowsEx Error 1314

  • Themenstarter Themenstarter DrHastig
  • Beginndatum Beginndatum
D

DrHastig

Moin,

ich möchte gerne meinen Rechner zum Runterfahren bringen und dies über WinAPI.

C++:
#include <iostream>
#include <Windows.h>

int main(int argc, char** argv) {
	ExitWindowsEx(EWX_POWEROFF, 0x00000000/*SHTDN_REASON_MAJOR_OTHER*/);
	std::cout << GetLastError(); //1314

    return EXIT_SUCCESS;
}

Als Fehler wird mir 1314 ausgegeben nur damit komm ich nicht wirklich weiter.
Ebenfalls komisch finde ich dass ich im zweiten Argument (dwReason) nicht den Symbolischen namen, wie er im msdn steht, benutzen kann sondern den Hexwert nehmen muss.

Weiß einer wie ich das lösen kann?
Btw: Ich bin C/C++ .
 
Zuletzt bearbeitet von einem Moderator:
Also ne lösung weiss ich nicht, aber probier mal die shutdown.exe zu starten, die parameter sind -s - t 0 zum sofortigen shutdoen
 
C++:
system("shutdown -s -f -t 0");

Das funktioniert aber genau das will ich ja eigentlich nicht.
 
Der Fehlerwert weist darauf hin, daß Dein Programm nicht die erforderlichen Rechte hat, um ExitWindowsEx so auszuführen.
MSDN:
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.
 
Zurück