Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Schon wieder Shutdown XP (https://www.delphipraxis.net/3464-schon-wieder-shutdown-xp.html)

CallmeMad 14. Mär 2003 14:39

Du bist ein schnuffel,
danke vorerst, muss ich heute Abend erst mal ausprobieren.
So, jetzt aber schnell noch ein bisschen arbeiten.

Schönes WE ...bis dann

Luckie 14. Mär 2003 14:41

Zitat:

Zitat von CallmeMad
Du bist ein schnuffel,

:wiejetzt:

Was ist ein "schnuffel"? Aber ist schon komisch, eine Freundin hat mich immer "Schnuffi" genannt. :roll:

Daniel B 14. Mär 2003 15:17

Zitat:

Zitat von Luckie
Was ist ein "schnuffel"?

Warscheinlich sowas. ;)
Zitat:

Aber ist schon komisch, eine Freundin hat mich immer "Schnuffi" genannt. :roll:
Ach je, Du tust mir aber Leid ;-)

Grüsse, Daniel :hi:

geisi 23. Sep 2003 16:27

Re: Schon wieder Shutdown XP
 
oder gehst hin und erstellst eine verknüpfung mit dem pfad:
"shutdown -s -t 00 -f" und rufst dieses programm mit shellexecuteshellexecute auf.
So fährt Windows einfach und schnell herunter.

Wormid 23. Sep 2003 22:58

Re: Schon wieder Shutdown XP
 
Versuch mal die 2te Routine aus der Code-Library auf die schon verwiesen wurde mit den Flags "EWX_POWEROFF" und "EWX_FORCE".

Delphi-Quellcode:
ExitWin(EWX_POWEROFF or EWX_FORCE);
Die beiden Flags fehlen auch noch in der Code-Lib... Mein Windows 2000 fährt bei "EWX_SHUTDOWN" nur bis zu der "Sie können den Computer jetzt ausschalten..."-Meldung runter.

Gruß

Wormid


P.S.: Das EWX_FORCE soll bewirken, das Windoofs zu Not die Appliktionen mit Gewalt beendet, wenn sie nicht auf das runterfahren regieren! Nachteil: Stoppt ein Proggi den Shutdown, weil es fragt "Änderungen speichern?", dann killt Windows die App ganz eiskalt und fährt trotzdem runter!

Lefko 8. Dez 2003 19:13

Re: Schon wieder Shutdown XP
 
Hallo Freunde :hi: ,

ich hab auch ein kleines Problemchen mit dem Code...

hab folgenden Code zum herunterfahren benutzt:

Delphi-Quellcode:
function Tform1.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);
    Application.Terminate;
  end
  else // Windows 95
  begin
    Result := ExitWindowsEx(flag,0);
    Application.Terminate;
  end;
end;
bei mir (WinME) klappt das auch wunderbar, aber bei WinXP klappt es gar nicht, da das Prog dann abschmiert....
woran kann das liegen? verwende ich falsche flags oder sowas?
ich hab EWX_POWEROFF or EWX_FORCEIFHUNG benutzt.

MfG Lefko.

PS: und wieso beendet sich das prog nicht noch schnell, nachdem es den befehl zum runterfahren gegeben hat? ist irgendwie doof, geht das nicht zu machen?

Lefko 9. Dez 2003 14:33

Re: Schon wieder Shutdown XP
 
hallo? würde mich freuen, wenn jemand eine antwort schriebe!
nein geht nicht wäre auch ok, dann weiss ich wenigstens, woran ich bin!!

MfG Lefko.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:09 Uhr.
Seite 2 von 2     12   

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-2025 by Thomas Breitkreuz