Share via


EraseTape 関数 (winbase.h)

EraseTape 関数は、テープの全部または一部を消去します。

構文

DWORD EraseTape(
  [in] HANDLE hDevice,
  [in] DWORD  dwEraseType,
  [in] BOOL   bImmediate
);

パラメーター

[in] hDevice

テープを消去するデバイスに取り扱います。 このハンドルは、 CreateFile 関数を使用して作成されます。

[in] dwEraseType

消去手法。 このパラメーターには、次の値のいずれかを指定できます。

意味
TAPE_ERASE_LONG
1L
現在の位置から現在のパーティションの末尾までテープを消去します。
TAPE_ERASE_SHORT
0L
現在の位置に消去ギャップまたはデータ終了マーカーを書き込みます。

[in] bImmediate

このパラメーターが TRUE の場合、関数は直ちに を返します。 FALSE の場合、この関数は消去操作が完了するまで戻りません。

戻り値

関数が成功した場合、戻り値はNO_ERROR。

関数が失敗した場合は、次のいずれかのエラー コードを返すことができます。

エラー コード 説明
ERROR_BEGINNING_OF_MEDIA
1102L
中の先頭マーカーが失敗する前にデータにアクセスしようとしました。
ERROR_BUS_RESET
1111L
バスでリセット条件が検出されました。
ERROR_DEVICE_NOT_PARTITIONED
1107L
テープがロードされているときにパーティション情報が見つかりませんでした。
ERROR_END_OF_MEDIA
1100L
操作中にテープの終了マーカーに達しました。
ERROR_FILEMARK_DETECTED
1101L
操作中に filemark に達しました。
ERROR_INVALID_BLOCK_LENGTH
1106L
マルチボリューム・パーティション内の新規テープでは、ブロック・サイズが正しくありません。
ERROR_MEDIA_CHANGED
1110L
ドライブに含まれているテープが交換または取り外されました。
ERROR_NO_DATA_DETECTED
1104L
操作中にデータの終了マーカーに到達しました。
ERROR_NO_MEDIA_IN_DRIVE
1112L
ドライブにメディアがありません。
ERROR_NOT_SUPPORTED
50L
テープ ドライバーは、要求された関数をサポートしていません。
ERROR_PARTITION_FAILURE
1105L
テープをパーティション分割できませんでした。
ERROR_SETMARK_DETECTED
1103L
操作中に設定マークに達しました。
ERROR_UNABLE_TO_LOCK_MEDIA
1108L
取り出し機構をロックできませんでした。
ERROR_UNABLE_TO_UNLOAD_MEDIA
1109L
テープのアンロードに失敗しました。
ERROR_WRITE_PROTECT
19L
メディアの書き込みが禁止されています。

注釈

一部のテープ デバイスでは、特定のテープ操作がサポートされていません。 テープ デバイスの機能を確認するには、テープ デバイスのドキュメントを参照し、 GetTapeParameters 関数を使用します。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

CreateFile

GetTapeParameters