GetTapeParameters 函式 (winbase.h)
GetTapeParameters 函式會擷取描述磁帶或磁帶機的資訊。
語法
DWORD GetTapeParameters(
[in] HANDLE hDevice,
[in] DWORD dwOperation,
[out] LPDWORD lpdwSize,
[out] LPVOID lpTapeInformation
);
參數
[in] hDevice
處理所要尋找信息的裝置。 此句柄是使用 CreateFile 函式所建立。
[in] dwOperation
要求的信息類型。 此參數必須是下列其中一個值。
值 | 意義 |
---|---|
|
擷取磁帶裝置的相關信息。 |
|
擷取磁帶裝置中磁帶的相關信息。 |
[out] lpdwSize
變數的指標,該變數會接收 lpTapeInformation 參數所指定的緩衝區大小,以位元組為單位。 如果緩衝區太小,此參數會收到所需的大小。
[out] lpTapeInformation
包含所要求信息的 結構指標。 如果 dwOperation 參數GET_TAPE_MEDIA_INFORMATION,lpTapeInformation 會指向TAPE_GET_MEDIA_PARAMETERS結構。
如果 dwOperation是GET_TAPE_DRIVE_INFORMATION,lpTapeInformation 會指向TAPE_GET_DRIVE_PARAMETERS結構。
傳回值
如果函式成功,傳回值 會NO_ERROR。
如果函式失敗,它可以傳回下列其中一個錯誤碼。
錯誤碼 | 描述 |
---|---|
|
嘗試在媒體開頭標記失敗之前存取數據。 |
|
在總線上偵測到重設條件。 |
|
載入磁帶時,找不到分割區資訊。 |
|
作業期間已到達磁帶結尾標記。 |
|
作業期間已達到檔案標記。 |
|
多卷分割區中新磁帶上的區塊大小不正確。 |
|
磁碟驅動器中的磁帶已取代或移除。 |
|
作業期間已達到數據結束標記。 |
|
磁碟驅動器中沒有媒體。 |
|
磁帶驅動程式不支援要求的函式。 |
|
無法分割磁帶。 |
|
作業期間已達到 setmark。 |
|
嘗試鎖定退出機制失敗。 |
|
嘗試卸除磁帶失敗。 |
|
媒體受到寫入保護。 |
備註
區塊大小範圍值 (最大值和最小) 由 呼叫的 GetTapeParameters 函式所傳回, 並將 dwOperation 參數設定為 GET_TAPE_DRIVE_INFORMATION 值會指出系統限制,而不是驅動限制。 不過,這是磁帶機裝置和磁碟驅動器中存在的媒體,可決定真正的區塊大小限制。 因此,應用程式可能無法在 dwOperation 中指定GET_TAPE_DRIVE_INFORMATION來設定範圍中提及的所有區塊大小。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winbase.h (包含 Windows.h) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |