[C++] windows nachrichten

Mit dem folgenden Code kannst Du die entsprechenden Privilegien für Dein Programm anfordern:

Code:
	HANDLE hToken; 
		TOKEN_PRIVILEGES tkp; 
 
		// Get a token for this process. 
 		if (!OpenProcessToken(GetCurrentProcess(), 
				TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) 
			AfxMessageBox("Error while creating a process token!", MB_OK, 0);			

		// Get the LUID for the shutdown privilege. 

		LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, 
				&tkp.Privileges[0].Luid); 

		tkp.PrivilegeCount = 1;  // one privilege to set    
		tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; 

		// Get the shutdown privilege for this process. 

		AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, 
				(PTOKEN_PRIVILEGES)NULL, 0); 

		// Cannot test the return value of AdjustTokenPrivileges. 

		if (GetLastError() != ERROR_SUCCESS) 
			AfxMessageBox("Error while adjusting token privileges!", MB_OK, 0);

		// Shut down the system and force all applications to close. 

		if (!ExitWindowsEx(EWX_POWEROFF | EWX_FORCEIFHUNG, 0)) 
			AfxMessageBox("Error while trying to shutdown! ", MB_OK, 0);
 
Zurück