GetTapeParameters 関数 (winbase.h)

GetTapeParameters 関数は、テープまたはテープ ドライブを記述する情報を取得します。

構文

DWORD GetTapeParameters(
  [in]  HANDLE  hDevice,
  [in]  DWORD   dwOperation,
  [out] LPDWORD lpdwSize,
  [out] LPVOID  lpTapeInformation
);

パラメーター

[in] hDevice

情報が求められるデバイスを処理します。 このハンドルは、 CreateFile 関数を使用して作成されます。

[in] dwOperation

要求された情報の種類。 このパラメーターには次のいずれかの値を指定する必要があります。

意味
GET_TAPE_DRIVE_INFORMATION
1
テープ デバイスに関する情報を取得します。
GET_TAPE_MEDIA_INFORMATION
0
テープ デバイス内のテープに関する情報を取得します。

[out] lpdwSize

lpTapeInformation パラメーターで指定されたバッファーのサイズ (バイト単位) を受け取る変数へのポインター。 バッファーが小さすぎる場合、このパラメーターは必要なサイズを受け取ります。

[out] lpTapeInformation

要求された情報を含む構造体へのポインター。 dwOperation パラメーターがGET_TAPE_MEDIA_INFORMATIONされている場合、lpTapeInformationTAPE_GET_MEDIA_PARAMETERS構造体を指します。

dwOperationGET_TAPE_DRIVE_INFORMATIONされている場合、lpTapeInformationTAPE_GET_DRIVE_PARAMETERS構造体を指します。

戻り値

関数が成功した場合、戻り値は 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
操作中にファイルマークに達しました。
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
メディアの書き込みが禁止されています。

注釈

dwOperation パラメーターを GET_TAPE_DRIVE_INFORMATION 値に設定して呼び出された GetTapeParameters 関数によって返されるブロック サイズ範囲の値 (最大値と最小値) は、ドライブの制限ではなく、システムの制限を示します。 ただし、実際のブロック サイズの制限を決定するのは、テープ ドライブ デバイスとドライブに存在するメディアです。 したがって、アプリケーションでは、dwOperationGET_TAPE_DRIVE_INFORMATIONを指定して取得した範囲で言及されているすべてのブロック サイズを設定できない場合があります。

要件

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

関連項目

CreateFile

SetTapeParameters

TAPE_GET_DRIVE_PARAMETERS

TAPE_GET_MEDIA_PARAMETERS