Ouvre la boîte de dialogue Formatage de Shell
#include <WinAPIDlg.au3>
_WinAPI_FormatDriveDlg ( $sDrive [, $iOption = 0 [, $hParent = 0]] )
$sDrive | Le lecteur à formater, au format D:, E:, etc |
$iOption | [optionnel] Ce paramètre doit être 0 ou l'une des valeurs suivantes qui modifient les options de formatage par défaut dans la boîte de dialogue. $SHFMT_OPT_FULL ( par défaut ) $SHFMT_OPT_QUICKFORMAT $SHFMT_OPT_SYSONLY |
$hParent | [optionnel] Handle de la fenêtre parent de la boîte de dialogue. |
Succès: | Retourne l'identifiant de formatage du dernier formatage réussi. Le LOWORD de cette valeur peut être transmis lors des appels ultérieurs dans le paramètre fmtID afin de répéter le dernier formatage. |
Échec: | Retourne 0 et définit @error à une des constantes suivantes: $SHFMT_ERROR $SHFMT_CANCEL $SHFMT_NOFORMAT |
Le format est contrôlé par l'interface de dialogue.
Autrement dit, l'utilisateur doit cliquer sur le bouton OK pour commencer effectivement le formatage--le formatage ne peut pas être démarrée par programme.
Consultez SHFormatDrive dans la librairie MSDN.
#include <Array.au3> #include <ComboConstants.au3> #include <GUIConstantsEx.au3> #include <WinAPIDlg.au3> Local $hForm = GUICreate('Test '& StringReplace(@ScriptName, '.au3', '()'), 200, 100) Local $vDrive = DriveGetDrive('ALL') $vDrive = StringUpper(_ArrayToString($vDrive, '|', 1)) GUICtrlCreateLabel('Select drive:', 15, 29, 62, 14) Local $idCombo = GUICtrlCreateCombo('', 79, 25, 40, 21, $CBS_DROPDOWNLIST) GUICtrlSetData(-1, $vDrive, StringLeft($vDrive, 2)) Local $idButton = GUICtrlCreateButton('Format...', 65, 70, 70, 23) GUISetState(@SW_SHOW) Local $iMsg Do $iMsg = GUIGetMsg() if $iMsg = $idButton Then _WinAPI_FormatDriveDlg(GUICtrlRead($idCombo), 0, $hForm) EndIf Until $iMsg = $GUI_EVENT_CLOSE