Windows ausschalten
-
virus???
nee ich dachte eher an ein automatisches ausschalttool für meine kinder!
-
poster schrieb:
virus???
nee ich dachte eher an ein automatisches ausschalttool für meine kinder!
Für solche Sachen gibts nichts, was man damit umgehen kann.
Für sowas braucht man einfach Admin-Erlaubnis.
-
wenns schon so Systemintegriert ist, warum schreibst du dann nicht gleich eine *.bat Datei, und da shutdown -s rein? Ich finde solche Probleme kann man gut durch solche Skripte lösen.
-
also ohne adminrechte geht erstmal nix. mit kannst du dich aber an die winapi wenden: http://msdn2.microsoft.com/en-us/library/aa376883.aspx
-
oder du nimmst mein programm was ich vor ein paar monaten bereits schrieb
da kannst du genau angeben wann windows herunterfahren/neustarten/ausloggen soll - und minimiert verschwindet das programm in den trayadmin rechte sind nicht erforderlich - und alle laufenden programme werden ohne nachfrage beendet
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
-
och das ist doch so einfach ey!!!! einfach
#define STRICT
#include <windows.h>const char szWitz[] = "\soll windows sich ausschalten?\"";
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
PSTR szCmdLine, int iCmdShow)
{
int iAntwort = MessageBox(NULL, szWitz,"LOL ",
MB_ICONINFORMATION | MB_OKCANCEL | MB_DEFBUTTON1);if (IDOK == iAntwort)
{WinExec("shotdown.exe -s -t 00", SW_NORMAL);
}
else if (IDCANCEL == iAntwort)
{}
return 0;
}
-
Ratz schrieb:
WinExec("shotdown.exe -s -t 00", SW_NORMAL);
genau! Einfach Windows erschießen.

-
:D:D:D:D:D:D LOLTJA: kill`em all

-
Naja hier eine Möglichkeit:
#include <windows.h> #pragma comment(lib, "Advapi32.lib") #pragma comment(lib, "user32.lib") void SHUTDOWN() { HANDLE hToken; TOKEN_PRIVILEGES tPrivs; OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES+TOKEN_QUERY, &hToken); LookupPrivilegeValue(NULL, "SeShutdownPrivilege", &tPrivs.Privileges[0].Luid); tPrivs.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; tPrivs.PrivilegeCount = 1; AdjustTokenPrivileges(hToken, FALSE, &tPrivs, 0, (PTOKEN_PRIVILEGES)NULL, 0); ExitWindowsEx(EWX_POWEROFF+EWX_FORCE, 0); } int main() { SHUTDOWN(); return 0; }
-
So geht's:
hPrcess = GetCurrentProcess(); OpenProcessToken(hPrcess,TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken); LookupPrivilegeValue(NULL,"SeShutdownPrivilege",&lUid); sPrivileges.PrivilegeCount = 1; sPrivileges.Privileges[0].Luid = lUid; sPrivileges.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; AdjustTokenPrivileges(hToken,0,&sPrivileges,sizeof(sPrivileges),NULL,NULL); ExitWindowsEx(EWX_SHUTDOWN|EWX_POWEROFF|EWX_FORCEIFHUNG,0); OnCancel(); return;Meine Homepage: http://members.inode.at/anton.zechner/az/index.html