Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Windows shutdown? (https://www.delphipraxis.net/1430-windows-shutdown.html)

czapie 25. Nov 2002 21:58


Windows shutdown?
 
Guten Abend Leute,
ich hab mal gelesen, dass man mit Delphi das windows herunterfahren kann stimmt das? Also ich glaub dass ich es gelesen hab, bin mir nicht mehr sicher ob das Delphi betraf,
danke,
Czapie.

Daniel B 25. Nov 2002 22:01

Hi,

http://www.delphipraxis.net/viewtopic.php?t=56

Grüsse, Daniel :hi:

Luckie 25. Nov 2002 22:48

So geht es aber nur mit Windows9x. Für Windows2000 und höher mußt du dir erst die Rechte holen:

Delphi-Quellcode:
function ExitWin(flag:word): Boolean;
var vi     : TOSVersionInfo;
    hToken : THandle;
    tp     : TTokenPrivileges;
    h      : DWord;

begin
  //result := false;
  vi.dwOSVersionInfoSize:=SizeOf(vi);
  GetVersionEx(vi);
  if vi.dwPlatformId = VER_PLATFORM_WIN32_NT then // Windows NT
  begin
    // Achtung bei Delphi 2 muß @hToken stehen ... !!!! ?????
    OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,hToken);
    LookupPrivilegeValue(nil,'SeShutdownPrivilege',tp.Privileges[0].Luid);
    tp.PrivilegeCount := 1;
    tp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
    h := 0;
    AdjustTokenPrivileges(hToken,False,tp,0,PTokenPrivileges(nil)^,h);
    CloseHandle(hToken);
    result := ExitWindowsEx(flag,0);
  end
  else // Windows 95
  begin
    Result := ExitWindowsEx(flag,0);
  end;
end;
Und Aufruf wie folgt:

Delphi-Quellcode:
ExitWin(EWX_POWEROFF);

MathiasSimmack 26. Nov 2002 08:20

Re: Windows shutdown?
 
Zitat:

Zitat von czapie
ich hab mal gelesen, dass man mit Delphi das windows herunterfahren kann stimmt das? Also ich glaub dass ich es gelesen hab, bin mir nicht mehr sicher ob das Delphi betraf

*hi hi* Ist mal ´ne neue Variante von
Zitat:

Hallo. Wie kann ich Windows herunterfahren? Ach ja: Die Suchfunktion habe ich nicht benutzt.
:twisted:


@Daniel B: Wäre es nicht eigentlich schon längst an der Zeit gewesen, deinen FAQ-Beitrag mal zu aktualisieren, damit auch NT/2000/XP-User was davon haben?

czapie 26. Nov 2002 16:20

;-)
 
Ok, ok.
Du hast ja recht ich hab nicht gesucht :oops:

Aber trotzdem danke,
czapie.

Daniel B 26. Nov 2002 18:00

Re: Windows shutdown?
 
Zitat:

Zitat von MathiasSimmack
@Daniel B: Wäre es nicht eigentlich schon längst an der Zeit gewesen, deinen FAQ-Beitrag mal zu aktualisieren, damit auch NT/2000/XP-User was davon haben?

Hm, nicht wirklich, bzw. absichtlich nicht gemacht. Luckies version brauche ich nicht zu nehmen und unter meinem Namen einfügen. Luckie könnte es ja auch selbst eintragen. Stell Dir vor was passiert, wenn ich es bei mir einfach einfüge. ;) //Das Rad neu erfinden muss auch nicht sein.

Grüsse, Daniel :hi:

Daniel 26. Nov 2002 18:09

Hallo,

ich habe den Beitrag von Mathias als Hinweis verstanden, den Code in der Library um diese Version hier zu ergänzen bzw. zu vervollständigen.
Aus meiner Sicht ist dieser Hinweis gut und ich werde mich jetzt daran machen, dies zu tun.


Grüße,
Daniel


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz