#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <EditConstants.au3>
#include <WindowsConstants.au3>
#include <TabConstants.au3>
;описание переменных
;===================================================================================================
Local $tab0, $tab1, $tab2, $tab3, $tab4, $tab5
Local $tab0input, $tab1input
;===================================================================================================
GUICreate("LOCK", 740, 480) ;заголовок окна
GUISetState()
;===================================================================================================
;создание поля с вкладками
$tab0 = GUICtrlCreateTab(10, 10, 520, 400, $TCS_TABS + $TCS_RIGHTJUSTIFY + $TCS_MULTILINE, $WS_EX_CLIENTEDGE) ;, $WS_VSCROLL) ;создание поля с вкладками
Dim $CheckBox[3]
;ВКЛАДКА (DEMO) ==========================================================================================================================
$tab5 = GUICtrlCreateTabItem("Демонстрация")
;Dim $CheckBox[3]
$CheckBox[0] = GUICtrlCreateCheckbox('Добавить пункт меню "!_пункт1"', 20, 50, 400, 20)
$CheckBox[1] = GUICtrlCreateCheckbox('Добавить пункт меню "!!__пункт2"', 20, 70, 400, 20)
$CheckBox[2] = GUICtrlCreateCheckbox('Добавить пункт меню "!!!___пункт3"', 20, 90, 400, 20)
GUICtrlCreateTabItem("") ; определяет конец вкладок
;Кнопка ПРИМЕНИТЬ ====================================================================================
Local $CTRL_btn3 = GUICtrlCreateButton("Применить", 570, 100, 80, 29)
GUISetState() ;Показывает созданное окно
Dim $CheckBoxItem[3]
;=================================Вкладка ДЕМО
$CheckBoxItem[0] = 'HKEY_CURRENT_USER\Software\Test,TestKey1,REG_SZ,Значение1|'& _
'HKEY_CURRENT_USER\Software\Test,TestKey2,REG_SZ,Значение2|'& _
'HKEY_CURRENT_USER\Software\Test,TestKey3,REG_SZ,Значение3'
$CheckBoxItem[1] = 'HKEY_CURRENT_USER\Software\Test,TestKey11,REG_SZ,Значение11|'& _
'HKEY_CURRENT_USER\Software\Test,TestKey12,REG_SZ,Значение12'
$CheckBoxItem[2] = 'HKEY_CURRENT_USER\Software\Test,TestKey21,REG_SZ,Значение21'
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $CTRL_btn3
ConsoleWrite('---------------------------------' & @CR)
For $i = 0 To UBound($CheckBoxItem) - 1
If GUICtrlRead($CheckBox[$i]) = $GUI_CHECKED Then
$Value = StringSplit($CheckBoxItem[$i], '|')
For $j = 1 To $Value[0]
$part = StringSplit($Value[$j], ',')
RegWrite($part[1], $part[2], $part[3], $part[4])
If Not @error Then
ConsoleWrite($Value[$j] & ' установлено' & @CR)
Else
ConsoleWrite('Ошибка записи ' & @error & ' в ' & GUICtrlRead($CheckBox[$i]) & @CR)
EndIf
Next
Else
$Value = StringSplit($CheckBoxItem[$i], '|')
For $j = 1 To $Value[0]
$part = StringSplit($Value[$j], ',')
RegDelete($part[1], $part[2])
If Not @error Then
ConsoleWrite($part[1] & ' значение ' & $part[2] & ' удалено' & @CR)
Else
ConsoleWrite('Ошибка удаления ' & @error & ' значения' & $part[4])
EndIf
Next
EndIf
Next
EndSwitch
WEnd