NIKZZZZ
Gold Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору #include <ButtonConstants.au3> #include <ComboConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Opt("TrayIconHide", 1) Opt("GUIOnEventMode", 1) #Region ### START Koda GUI section ### Form= $FORM1_1 = GUICreate("Check Disk", 434, 156) If FileExists(@ScriptDir & '\ChkDskGui.ico') Then GUISetIcon(@ScriptDir & '\ChkDskGui.ico') GUISetOnEvent($GUI_EVENT_CLOSE, "Form1Close") $COMBO1 = GUICtrlCreateCombo("", 18, 16, 395, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL)) GUICtrlSetFont($COMBO1, 10, 400, 0, "Courier New") GUICtrlSetData($COMBO1, GETDRV()) $CHECKBOX1 = GUICtrlCreateCheckbox("Исправление ошибок на диске", 18, 58, 283, 17) $CHECKBOX2 = GUICtrlCreateCheckbox("Восстановление поврежденных секторов", 18, 86, 283, 17) GUICtrlSetOnEvent($CHECKBOX2, "Checkbox2Click") $CHECKBOX3 = GUICtrlCreateCheckbox("Принудительное отключение тома", 18, 114, 220, 17) GUICtrlSetOnEvent($CHECKBOX3, "Checkbox3Click") $BUTTON1 = GUICtrlCreateButton("Старт", 364, 116, 51, 25) GUICtrlSetOnEvent($BUTTON1, "Button1Click") GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### While 1 Sleep(100) WEnd Func CHECKBOX2CLICK() GUICtrlSetState($CHECKBOX1, $GUI_CHECKED) EndFunc ;==>CHECKBOX2CLICK Func CHECKBOX3CLICK() GUICtrlSetState($CHECKBOX1, $GUI_CHECKED) EndFunc ;==>CHECKBOX3CLICK Func FORM1CLOSE() Exit EndFunc ;==>FORM1CLOSE Func GETDRV() Local $sInfo = "", $i $sDrive = DriveGetDrive("FIXED") If Not @error Then For $i = 1 To $sDrive[0] If $sInfo <> "" Then $sInfo &= "|" $sInfo &= GetDriveInfo($sDrive[$i], "FIXED") Next EndIf $sDrive = DriveGetDrive("REMOVABLE") If Not @error Then For $i = 1 To $sDrive[0] If $sDrive[$i] <> "a:" Then If $sInfo <> "" Then $sInfo &= "|" $sInfo &= GetDriveInfo($sDrive[$i], "REM") EndIf Next EndIf Return $sInfo EndFunc ;==>GETDRV Func GetDriveInfo($sDrive, $sDriveType) Local $sInfo, $sSize, $sLabel $sSize = StringFormat("%11.2f", DriveSpaceTotal($sDrive)) $sSize = StringMid($sSize, 1, 2) & " " & StringMid($sSize, 3, 3) & " " & StringMid($sSize, 6) $sLabel = DriveGetLabel($sDrive) If StringLen($sLabel) > 15 Then $sLabel = StringLeft($sLabel, 12) & "..." $sInfo = StringFormat("%2s %-5s %-15s %-5s%13s Mb", StringUpper($sDrive), $sDriveType, $sLabel, DriveGetFileSystem($sDrive), $sSize) Return $sInfo EndFunc ;==>GetDriveInfo Func BUTTON1CLICK() $sDisk = StringLeft(GUICtrlRead($COMBO1), 2) If StringRight($sDisk, 1) = ":" Then GUICtrlSetState($BUTTON1, $GUI_DISABLE) $sArgs = $sDisk If GUICtrlRead($CHECKBOX1) = $GUI_CHECKED Then $sArgs &= " /f" If GUICtrlRead($CHECKBOX2) = $GUI_CHECKED Then $sArgs &= " /r" If GUICtrlRead($CHECKBOX3) = $GUI_CHECKED Then $sArgs &= " /x" RunWait(@ComSpec & ' /c (Title Check Disk & @Echo off & Color 1e & cls & chkdsk.exe ' & $sArgs & ' & set /p Ok=^>^>)') GUICtrlSetState($BUTTON1, $GUI_ENABLE) EndIf EndFunc ;==>BUTTON1CLICK | Всего записей: 5365 | Зарегистр. 08-02-2006 | Отправлено: 21:00 02-02-2012 | Исправлено: NIKZZZZ, 21:11 02-02-2012 |
|