あんまり使い道はないかも。
起動専用は使えないみたい(ここら辺はよく分からん)。返り値も0と-2以外受け取れなかった。 Private Declare Function SHFormatDrive Lib "shell32" (ByVal hwndOwner As Long, ByVal iDrive As Long, ByVal iCapacity As Long, ByVal iFormatType As Long) As Long
Private Const SHFD_FORMAT_QUICK = 0 'クイックフォーマット Private Const SHFD_FORMAT_FULL = 1 '通常のフォーマット Private Const SHFD_FORMAT_SYSONLY = 2 '起動専用 Private Const SHFD_CAPACITY_DEFAULT = 0 'デフォルトドライブ Private Const SHFD_CAPACITY_360 = 3 Private Const SHFD_CAPACITY_720 = 5 ' ------------------------------------------------------------------- ' 関数名 : ShowFDFormatDLG ' 機能 : フロッピーフォーマットのダイアログを表示する ' 引数 : (in) hWnd … 呼び出し側のウインドウハンドル ' (in) fType … 0:クイックフォーマット ' 1:通常のフォーマット ' 2:起動専用 ' 返り値 : -1:実行を試みたが、フォーマットに失敗した ' -2:[キャンセル]が押された ' -3:失敗(ドライブの指定が間違っている) ' -4:パラメータエラー ' 0:フォーマット実行後、終了した(正常) ' ------------------------------------------------------------------- Public Function ShowFDFormatDLG(ByVal hWnd As Long, ByVal fType As Integer) Dim ret As Long Dim FormatType As Long Select Case fType Case 0 FormatType = SHFD_FORMAT_QUICK Case 1 FormatType = SHFD_FORMAT_FULL Case 2 FormatType = SHFD_FORMAT_SYSONLY Case Else ShowFDFormatDLG = -4 Exit Function End Select ShowFDFormatDLG = SHFormatDrive(hWnd, 0, SHFD_CAPACITY_DEFAULT, FormatType) End Function |