Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Force bei ExWind funktioniert nicht!---> Abmelden ohne Rückfrage (https://www.delphipraxis.net/152376-force-bei-exwind-funktioniert-nicht-abmelden-ohne-rueckfrage.html)

Fussel9 20. Jun 2010 22:58

Delphi-Version: 2006

Force bei ExWind funktioniert nicht!---> Abmelden ohne Rückfrage
 
Beim Aufruf:

Delphi-Quellcode:
self.ExWind(EW_Abmelden,True);
der Procedure:

Delphi-Quellcode:
procedure TFormMain.ExWind (E: TExit; force: boolean);
var
  vi: TOSVersionInfo;
  flag: integer;
begin
  if e = EW_Garnicht then exit;
  flag := 0;
  vi.dwOSVersionInfoSize:=SizeOf(vi);
  GetVersionEx (vi);
  if vi.dwPlatformId = VER_PLATFORM_WIN32_NT then
    GetShutdownPrivileges;
    // die brauchen wir nur, wenn's mindestens Windows NT ist
  if Force then
  begin
    if (vi.dwPlatformId = VER_PLATFORM_WIN32_NT) and
       (vi.dwMajorVersion >=5) then
      flag := EWX_FORCEIFHUNG
      // geht ab Windows 2000
    else // also entweder NT oder gar windows 95/98/ME
      flag := EWX_FORCE;
  end;
  if E = EW_herunterfahren then
    ExitWindowsEx(EWX_ShutDown or flag, 0);
  if E = EW_Ruhezustand then
    SetSystemPowerState(false, Force);
  if E = EW_Standby then
    SetSystemPowerState(true, Force);
  if E = EW_Abmelden then
    ExitWindowsEx(EWX_LOGOFF or flag, 0);
  if E = EW_Neustart then
    ExitWindowsEx(EWX_REBOOT or flag,0);
end;
welche ich hier im Forum erhalten habe, funktioniert der Force nicht beim Abmelden...

ist z.B. ein Textdokument geöffnet welches noch nicht gesichert wurde wird trotz Force=TRUE eine Rückfrage gestellt : Programm verhindert das abmelden... blablabla... Sofort Beenden oder Abbrechen?
Wird Abbrechen gewählt wird nicht abgemeldet...

Kann jemand helfen?

-benutze Windows 7

wäre schon wenn jemand mit XP das mal debuggen könnte oder vielleicht kennt ja jemand eine kostenlose VirtualMaschine ???
Falls wer Lust hat oder was weiß bitte melden

David Martens 20. Jun 2010 23:46

AW: Force bei ExWind funktioniert nicht!---> Abmelden ohne Rückfrage
 
Als kostenlose VirtualMaschine kannst du den VMware-Player benutzen (soll keine Werbung sein). Fertige Maschines gibt's mittlerweile auch dafür, wenn du XP nicht selber aufsetzten willst, nur noch deinen Schlüssel eingeben, fertig.

Fussel9 21. Jun 2010 20:50

AW: Force bei ExWind funktioniert nicht!---> Abmelden ohne Rückfrage
 
ok,danke:thumb: und nun zur Kernfrage...wieso geht der Force nicht???:?

DeddyH 22. Jun 2010 08:22

AW: Force bei ExWind funktioniert nicht!---> Abmelden ohne Rückfrage
 
Lies doch einmal die Dokumentation zu MSDN-Library durchsuchenExitWindowsEx (auch und gerade die Bemerkungen, die Beschreibung zum letzten Parameter sowie die weiterführenden Links).

Fussel9 22. Jun 2010 22:36

AW: Force bei ExWind funktioniert nicht!---> Abmelden ohne Rückfrage
 
:-D Mein englishes Fachchunesisch ist leider noch nicht so ausgereift ^^

Aber ich google mal... ne direkte Lösung kennt also keiner oder?...


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

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