EraseTape

機能
テープの一部、またはすべてを消去する
Declare Function EraseTape Lib "kernel32.dll"  _
(ByVal hDevice As Long, ByVal dwEraseType As Long, _
ByVal bimmediate As Long ) As Long
Declare Function EraseTape Lib "kernel32.dll"  _
(ByVal hDevice As Integer, ByVal dwEraseType As Integer, _
ByVal bimmediate As Integer ) As Integer

DWORD EraseTape(
HANDLE hDevice,
DWORD dwEraseType,
BOOL bImmediate
);
引数
hDevice

テープデバイスのハンドル(CreateFile()関数の戻り値)
dwEraseType
消去方法を指定定数の一つ
bimmediate
0のとき   操作が終了するまで関数は帰らない
1のとき   操作が終了する前に帰る
戻り値
正常終了のとき                     NO_ERROR(=0)
エラーのとき                       エラーを示す定数
備考
テープデバイスによってはサポートされていないテープ操作がある
GetTapeParameters()関数を参照
dwEraseTypeの定数

Const TAPE_ERASE_LONG                               'テープをカレントポジションから
                                                     '現在のパーティションの終端まで消去
Const TAPE_ERASE_SHORT                              'カレントポジションに消去ギャップ
                                                     'または「データの終端」マーカーを書き込む
エラーコードを示す定数

Const ERROR_BEGINNING_OF_MEDIA = 1102&              '「メディアの先頭」マーカーより前にあるデータに
                                                     'アクセスしようとした
Const ERROR_BUS_RESET = 1111&                       'バスがリセット状態になっている
Const ERROR_END_OF_MEDIA = 1100&                    '操作中に「テープの終端」マーカーに到達した
Const ERROR_FILEMARK_DETECTED = 1101&               '操作中にファイルマークに到達した
Const ERROR_SETMARK_DETECTED = 1103&                '操作中にセットマークに到達した
Const ERROR_NO_DATA_DETECTED = 1104&                '操作中に「データの終端」マーカーに到達した
Const ERROR_PARTITION_FAILURE = 1105&               'テープ内にパーティションを作成できなかった
Const ERROR_INVALID_BLOCK_LENGTH = 1106&            'マルチボリュームパーティションの新しいテープの
                                                     'ブロックサイズが間違っている
Const ERROR_DEVICE_NOT_PARTITIONED = 1107&          'テープ内にパーティションが見つからなかった
Const ERROR_MEDIA_CHANGED = 1110&                   'ドライブ内のテープが取り替えられた or 取り出された
Const ERROR_NO_MEDIA_IN_DRIVE = 1112&               'メディアがセットされていない
Const ERROR_NOT_SUPPORTED = 50&                     '関数がサポートされていない
Const ERROR_UNABLE_TO_LOCK_MEDIA = 1108&            'テープをロックできなかった
Const ERROR_UNABLE_TO_UNLOAD_MEDIA = 1109&          'テープのアンロードに失敗した
Const ERROR_WRITE_PROTECT = 19&                     'メディアが書込み禁止状態