Seite 1 von 1

Attrib & Shutdown

Verfasst: 10.05.2005 16:51
von Werner
Vielen Dank an Kiffi & bluejoke :) :)

Der Hinweis zu Attrib war gut:

Code: Alles auswählen

;****************************************************************************************
; Attribute abfragen
;****************************************************************************************
Attrib_Status = GetFileAttributes_("d:\test.txt")
Ergebnis$ = Str(Attrib_Status) 
MessageBox_(0, "Attrib-Status: "+Ergebnis$,"Info",0)
End

;****************************************************************************************
; Attribute setzen
;****************************************************************************************
Datei$="d:\test.txt"
SetFileAttributes_(Datei$,0);  alle Attribute zurücksetzen
SetFileAttributes_(Datei$,1);  schreibgeschützt
SetFileAttributes_(Datei$,3);  schreibgeschützt + versteckt
SetFileAttributes_(Datei$,4);  System
SetFileAttributes_(Datei$,5);  System + schreibgeschützt
SetFileAttributes_(Datei$,6);  System + versteckt
SetFileAttributes_(Datei$,7);  System + schreibgeschützt + versteckt
SetFileAttributes_(Datei$,32); Archiv
End
Denn Windows XP-Shutdown abzufangen scheint doch nicht so einfach zu sein:

Code: Alles auswählen

#win_main=1 
#SW_Name="Test" 
Dateiname$="d:\test.txt"
Text$="Windows wurde beendet!"

main_win=OpenWindow(#win_main,0,0,150,30,#PB_Window_Invisible,#SW_Name) 

Repeat 
 EventID = WaitWindowEvent() 
    If EventID    ; ein Ereignis befindet sich in der "Queue" (Warteschlange), also arbeiten wir es ab 
      Ergebnis$ = Str(EventID)
    EndIf
Until EventID = #PB_Event_CloseWindow

Datum$=FormatDate("%yyyy.%mm.%dd / %hh:%ii", Date())
CreateFile(1, DateiName$)
WriteStringN(Datum$)
WriteStringN(Text$)
WriteStringN("EventID: "+Ergebnis$)

CloseFile(1)

End
Das Programm wird durch das Beenden von WXP einfach erschlagen.
Hat da noch jemand eine Idee?

Gruß, Werner

Shutdown WXP abfangen

Verfasst: 12.05.2005 16:36
von Werner
Habe ich wirklich keine Möglichkeit beim Beenden/Abmelden von WXP automatisch folgenden Code eines im Speicher befindlichen PB-Programms auszuführen?
Wäre wirklich schade... :cry:

Code: Alles auswählen

Datum$=FormatDate("%yyyy.%mm.%dd / %hh:%ii", Date()) 
CreateFile(1, DateiName$) 
WriteStringN(Datum$) 
WriteStringN(Text$) 
WriteStringN("EventID: "+Ergebnis$) 

CloseFile(1) 

End 

Verfasst: 12.05.2005 16:53
von walker
Hi,

doch, gibt es.... :D
Du musst einfach ein Windowcallback einrichten und dort die Message #WM_CLOSE abfragen....

cu
Ulf

Re: Shutdown WXP abfangen

Verfasst: 12.05.2005 16:57
von ts-soft
Werner hat geschrieben:Habe ich wirklich keine Möglichkeit beim Beenden/Abmelden von WXP automatisch folgenden Code eines im Speicher befindlichen PB-Programms auszuführen?
Wäre wirklich schade... :cry:
Hab den Thread gerade erst gelesen, im ShowCase findest Du TS-Shutdown mit Source, da wird auch #WM_QUERYSYSTEMSHUTDOWN ausgewertet, um noch den Text der sich in der Zwischenablage befindet zu speichern. Sollte Dir das zu Aufwendig sein, erstelle ich Dir gerne ein kurzes Beispiel.

Shutdown

Verfasst: 12.05.2005 19:07
von Werner
Danke an ts-soft & walker für eure Beiträge :)

An ts-soft ein dickes Lob zu ts-shutdown.
Dieses Programm hat mein Problem gelöst :allright:

PS: Ich konnte mir einfach nicht vorstellen, dass es Grenzen für PB gibt.

Gruß, Werner

Verfasst: 12.05.2005 19:17
von ts-soft
>> An ts-soft ein dickes Lob zu ts-shutdown.
:oops: So ein Feedback freut einen natürlich, jetzt werde ich wohl doch nochmal drüber nachdenken es zu erweitern, hab da an eine plugin-schnittstelle gedacht, z.b. für terminerinnerung und ähnliches. :allright: