Moin Leute,
ich möchte ein programm schreiben, das aus Checkboxen besteht und Je nach Auswahl die programme installiert.
habe schonmal ein bisschen probiert und komme nicht weiter....
Hier der code:
Code
#include <GUIConstants.au3>
Opt("GUIOnEventMode",1)
GUICreate("Installationguide 0.1a", 600, 600)
GUISetOnEvent($GUI_EVENT_CLOSE, "_Close") ;schliessen
; Auswahl der Software
; 1. Office-Versionen:
$o2000 = GUICtrlCreateCheckbox("Office2000", 10, 50)
GUICtrlSetOnEvent(-1, '_o2000clicked')
;~ $oxp = GUICtrlCreateCheckbox("OfficeXP", 10, 70)
;~ GUICtrlSetOnEvent(-1, '_oxpclicked')
;~ $o2003 = GUICtrlCreateCheckbox("Office2003", 10, 90)
;~ GUICtrlSetOnEvent(-1, '_o2003clicked')
;~ $o2007 = GUICtrlCreateCheckbox("Office2007", 10, 110)
;~ GUICtrlSetOnEvent(-1, '_o2007clicked')
$checkCN2 = GUICtrlCreateCheckbox ("CHECKBOX 2", 10, 30, 120, 20)
GUICtrlSetOnEvent(-1, '_CN2clicked')
$reader = GUICtrlCreateCheckbox("Adobe Reader 9.0", 10, 170)
GUICtrlSetOnEvent(-1, '_reader')
$message = GUICtrlCreateCheckbox("Nachrichtendienst einschalten", 10, 370)
GUICtrlSetOnEvent(-1, '_message')
$okbutton = GUICtrlCreateButton ("OK",50,130,70,20)
GUICtrlSetState(-1,$GUI_FOCUS)
GUICtrlSetState(-1, $GUI_DISABLE)
GUICtrlSetOnEvent(-1,"_Checkbox")
$cancelbutton = GUICtrlCreateButton ("Cancel",180,130,70,20)
GUICtrlSetOnEvent(-1,"_Close");abbrechen
GUISetState ()
While 1
Sleep(100)
WEnd
Func _Close()
GUIDelete()
Exit
EndFunc
Func _o2000clicked()
If BitAND(GUICtrlRead($o2000), $GUI_CHECKED) Then
GUICtrlSetState($checkCN2, $GUI_DISABLE)
GUICtrlSetState($okbutton, $GUI_ENABLE)
Else
GUICtrlSetState($checkCN2, $GUI_ENABLE)
If BitAND(GUICtrlRead($checkCN2), $GUI_UNCHECKED) Then GUICtrlSetState($okbutton, $GUI_DISABLE)
EndIf
EndFunc
Func _CN2clicked()
If BitAND(GUICtrlRead($checkCN2), $GUI_CHECKED) Then
GUICtrlSetState($o2000, $GUI_DISABLE)
GUICtrlSetState($okbutton, $GUI_ENABLE)
Else
GUICtrlSetState($o2000, $GUI_ENABLE)
If BitAND(GUICtrlRead($o2000), $GUI_UNCHECKED) Then GUICtrlSetState($okbutton, $GUI_DISABLE)
EndIf
EndFunc
Func _reader()
If BitAND(GUICtrlRead($reader), $GUI_CHECKED) Then
GUICtrlSetState($reader, $GUI_DISABLE)
GUICtrlSetState($okbutton, $GUI_ENABLE)
Else
GUICtrlSetState($reader, $GUI_ENABLE)
If BitAnd(GUICtrlRead($reader), $GUI_UNCHECKED) Then GUICtrlSetState($okbutton, $GUI_DISABLE)
EndIf
EndFunc
Func _message()
If BitAND(GUICtrlRead($message), $GUI_CHECKED) Then
GUICtrlSetState($message, $GUI_DISABLE)
GUICtrlSetState($okbutton, $GUI_ENABLE)
Else
GUICtrlSetState($message, $GUI_ENABLE)
If BitAnd(GUICtrlRead($message), $GUI_UNCHECKED) Then GUICtrlSetState($okbutton, $GUI_DISABLE)
EndIf
EndFunc
Func _Checkbox();
Select
Case BitAND(GUICtrlRead($o2000), $GUI_CHECKED)
MsgBox(0, "Checkbox 1", "ausgewählt")
Case BitAND(GUICtrlRead($checkCN2), $GUI_CHECKED)
MsgBox(0, "Checkbox 2", "ausgewählt")
Case BitAND(GUICtrlRead($reader), $GUI_CHECKED)
RunWait("D:\AdbeRdr90_de_DE.exe /sPB")
Case BitAND(GUICtrlRead($message), $GUI_CHECKED)
RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Messenger", "Start", "REG_DWORD", "2")
EndSelect
EndFunc
Alles anzeigen
Das eigentliche Programm ist, das er in der Select Auswahl unten Adobe reader ausführt und installiert, aber den Registry-Eintrag nicht schreibt.
LG