BCB5: PC Herunterfahren

Hallo!

Ich möchte gerne auf Knopfdruck den PC runterfahren. Nicht aber über Start - Herunterfahren…, sondern vom BCB5-Programm. Gibt es da eine Möglichkeit?

Danke schon jetzt,
Luggi

so :
HANDLE hToken;
LUID takeOwnershipValue;
TOKEN_PRIVILEGES tkp;

if( !OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY,&hToken) )
{
Application->MessageBox(„Exit Error“,„OpenProcessToken() failed“,MB_OK);
return;
}
if( !LookupPrivilegeValue(0,SE_SHUTDOWN_NAME, &takeOwnershipValue) )
{
Application->MessageBox(„Exit Error“,„LookupPrivilegeValue() failed“,MB_OK);
return;
}

tkp.PrivilegeCount = 1;
tkp.Privileges[0].Luid = takeOwnershipValue;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken,false,&tkp,sizeof(TOKEN_PRIVILEGES),0,0);
if( GetLastError() )
{
Application->MessageBox(„Exit Error“,„AdjustTokenPrivileges() failed“,MB_OK);
return;
}
ExitWindowsEx(EWX_FORCE | EWX_SHUTDOWN,0);

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]