ďťż

Ładny brzuch

Mam troche głupie pytanie... Co złego jest w tym kodzie?

function DelphiExitsWindows(Flags: Word):Boolean;  var    iVersionInfo : TOSVersionInfo;    iToken    : THandle;    iPriveleg : TTokenPrivileges;    iaresult  : DWord;  begin    Result:=False;    FillChar (iPriveleg, SizeOf (iPriveleg), #0);   iVersionInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo);   GetVersionEx(iVersionInfo);   if iVersionInfo.dwPlatformId <> VER_PLATFORM_WIN32_NT then     Result:=ExitWindowsEx(Flags, 0)  else    if OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES 16:     or TOKEN_QUERY, iToken) then       if LookupPrivilegeValue (NIL,'SeShutdownPrivilege',          iPriveleg.Privileges[0].Luid) then      begin        iPriveleg.PrivilegeCount := 1;       iPriveleg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;         if AdjustTokenPrivileges (iToken, False, iPriveleg,            Sizeof(iPriveleg), iPriveleg, iaresult) then           Result:=ExitWindowsEx (Flags, 0);       end; end;

Podobno to funkcja na zamykanie Windowsa NT (więc pod XP powinna działać?) :] Wie ktoś co jest nie tak? Z góry dzięki za szybką odpowiedź :)



Nie czytalem - ale jest zasada - co jest nie tak? Wywala Ci blad? Nie zamyka systemu? Monitor wybucha?
Wiem ze to: http://www.swissdelp...code.php?id=168 dziala pod kazdym windowsem

lepiej ShellExecute i shutdown :)


lepiej ShellExecute i shutdown :)




dziala tylko na xp Arundll32 user,ExitWindowsdla win9x? :P


Arundll32 user,ExitWindowsdla win9x? :P

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •