Ich habe mir nen kleines hilfsprogrämmchen gebastelt dass mir das ewige drücken des Knopfes meines NAS erspart - funktioniert auch soweit ganz gut aber immer wenn ich nen Button drücke dann friert die Anwendung für ein paar sekunden ein und es ist kein bewegen o.ä. des fensters möglich. Warum? bzw. was kann man machen um dem entgegenzuwirken?
(ist auch noch nicht ganz fertig, deshalb haben herunterfahren und neustarten beinahe die gleiche funktion)
Code: Alles auswählen
;- Window Constants
;
Enumeration
#Window_0
EndEnumeration
;- Gadget Constants
;
Enumeration
#Button_1
#Button_3
#Button_2
#Status
#Text_1
EndEnumeration
;- Fonts
Global FontID1
FontID1 = LoadFont(1, "Tahoma", 11)
If InitNetwork()
If OpenWindow(#Window_0, 634, 420, 312, 153, "NAS Shutdown", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
ButtonGadget(#Button_1, 10, 110, 90, 30, "Ausschalten")
ButtonGadget(#Button_3, 210, 110, 90, 30, "Abbrechen")
ButtonGadget(#Button_2, 110, 110, 90, 30, "Neustarten")
TextGadget(#Status, 10, 60, 290, 20, "")
TextGadget(#Text_1, 10, 10, 290, 20, "CH3WNAS herunterfahren oder neustarten?", #PB_Text_Center)
SetGadgetFont(#Text_1, FontID1)
EndIf
EndIf
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
Case #PB_Event_Gadget
If EventGadget() = #Button_1
SetGadgetText(#Status, "Einloggen...")
If GetHTTPHeader("http://ch3wnas/goform/formLogin?f_LOGIN_NAME=admin&f_LOGIN_PASSWD=&f_login_type=0")
SetGadgetText(#Status, "Eingeloggt")
If GetHTTPHeader("http://ch3wnas/goform/sysShootDown")
SetGadgetText(#Status, "Ausgeschaltet")
Else
SetGadgetText(#Status, "Ausschalten fehlgeschlagen")
EndIf
Else
SetGadgetText(#Status, "Einloggen fehlgeschlagen")
EndIf
EndIf
If EventGadget() = #Button_2
SetGadgetText(#Status, "Einloggen...")
If GetHTTPHeader("http://ch3wnas/goform/formLogin?f_LOGIN_NAME=admin&f_LOGIN_PASSWD=&f_login_type=0")
SetGadgetText(#Status, "Eingeloggt")
If GetHTTPHeader("http://ch3wnas/goform/sysShootDown")
SetGadgetText(#Status, "Ausgeschaltet")
Else
SetGadgetText(#Status, "Ausschalten fehlgeschlagen")
EndIf
Else
SetGadgetText(#Status, "Einloggen fehlgeschlagen")
EndIf
EndIf
If EventGadget() = #Button_3
End
EndIf
EndSelect
ForEver