#RequireAdmin
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <GDIPlus.au3>
Global $timer, $Secs, $Mins, $Hour, $Time, $sTime, $TimeInf, $sPS, $sPD
Global $iPid, $iTM
$hGui = GUICreate('Секундомер', 700, 680, -1, -1, -1, $WS_EX_TOPMOST)
Local $btStart = GUICtrlCreateButton('Старт', 392, 8, 75, 25)
Local $sPathSS = GUICtrlCreateInput('', 8, 96, 325, 21)
Local $sPathDD = GUICtrlCreateInput('', 8, 128, 325, 21)
Local $sPathS = GUICtrlCreateButton('Откуда', 392, 96, 75, 25)
Local $sPathD = GUICtrlCreateButton('Куда', 392, 128, 75, 25)
Local $btClear = GUICtrlCreateButton('Очистить', 392, 630, 75, 25)
$LabelPic1 = GUICtrlCreateLabel('', 8, 370, 330, 25, $SS_CENTERIMAGE + $SS_CENTER, $WS_EX_STATICEDGE)
$LabelPic2 = GUICtrlCreateLabel('', 338, 370, 330, 25, $SS_CENTERIMAGE + $SS_CENTER, $WS_EX_STATICEDGE)
$LabelPic3 = GUICtrlCreateLabel('', 8, 600, 330, 25, $SS_CENTERIMAGE + $SS_CENTER, $WS_EX_STATICEDGE)
$LabelPic4 = GUICtrlCreateLabel('', 338, 600, 330, 25, $SS_CENTERIMAGE + $SS_CENTER, $WS_EX_STATICEDGE)
GUISetState()
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ProcessClose($iPid)
Exit
Case $sPathS
GUICtrlSetData($sPathSS, '')
$sPS = FileSelectFolder('Выбор копируемой папки', '', 0, '', $hGui)
If Not @error Then GUICtrlSetData($sPathSS, $sPS)
Case $sPathD
GUICtrlSetData($sPathDD, '')
$sPD = FileSelectFolder('Выбор папки назначения', '', 0, '', $hGui)
If Not @error Then GUICtrlSetData($sPathDD, $sPD)
Case $btStart
_GetPath()
Case $btClear
GUICtrlSetData($sPathSS, '')
GUICtrlSetData($sPathDD, '')
;GUICtrlDelete($LabelPic1)
;GUICtrlDelete($LabelPic2)
_Clear()
EndSwitch
WEnd
Func _GetPath()
$Path = 'Копировали из ' & GUICtrlRead($sPathSS) & ' в ' & GUICtrlRead($sPathDD)
$AllPath = IniReadSection("Setting.ini", "Путь")
For $i = 1 To $AllPath[0][0]
If $AllPath[$i][1] = '' Then ;Переменная не занесена
For $j = 1 To $i - 1 ; Проверка на уникальность пути
If $AllPath[$j][1] = $Path Then ; Такой путь уже есть
MsgBox(16, 'Внимание !', 'Путь к папке:' & @CR & $Path & 'уже существует !', 0, $hGui)
Return
EndIf
Next
IniWrite("Setting.ini", "Путь", $AllPath[$i][0], $Path)
;$LabelPic = $LabelPic+$i
GUICtrlSetData($LabelPic1, IniRead("Setting.ini","Путь", $AllPath[$i][0], "Пока пусто"))
If $i < $AllPath[0][0] Then Return
EndIf
Next
;MsgBox(64, 'Внимание !', 'Все переменные занесены !', 0, $hGui)
MsgBox(64, 'ahtung', $AllPath[2][1], 0, $hGui)
EndFunc
Func _Clear()
Local $aRS = IniReadSection("Setting.ini", "Путь")
If Not @error Then
For $i = 1 To $aRS[0][0]
$aRS[$i][1] = ''
Next
IniWriteSection("Setting.ini", "Путь", $aRS)
EndIf
EndFunc