Avatar billede lequet Nybegynder
21. september 2002 - 17:53 Der er 1 kommentar og
1 løsning

Shutdown / Restart

Hej, jeg har 2 knapper, den ene skal afslutte alle kørende programmer og lukke computeren, den anden skal blot genstarte computeren.

Har søgt lidt rundt om på nettet men kan ikke lige finde noget brugbart. Det skal virke i winXP, og for god ordens skyld må jeg hellere sige at jeg bruger C++ builder 5 (hvis det har nogen betydning)

Håber nogen kan hjælpe :)
Avatar billede lequet Nybegynder
22. september 2002 - 14:57 #1
Lukker...
Avatar billede lequet Nybegynder
22. september 2002 - 22:01 #2
Efter en del søgen rundt omkring fandt jeg et brugbart stykke kode, og her er det i tilfælde af at andre skulle få brug for det :) Mere info kan findes på : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/exitwindowsex.asp

BOOL Shutdown()
{
  HANDLE hToken;
  TOKEN_PRIVILEGES tkp;

  // Get a token for this process.

  if (!OpenProcessToken(GetCurrentProcess(),
        TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
      return( FALSE );

  // 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);

  if (GetLastError() != ERROR_SUCCESS)
      return FALSE;

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

  if (!ExitWindowsEx(EWX_REBOOT | EWX_FORCE, 0))
      return FALSE;

  return TRUE;
}

Husk at include windows.h
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester