UpdateNtmsOmidInfo 函式 (ntmsapi.h)
[從 Windows 7 和 Windows Server 2008 R2 起,已不再提供卸除式儲存管理員 。]
UpdateNtmsOmidInfo 函式會在寫入新配置的媒體之後,立即使用標籤資訊更新 RSM 資料庫。
語法
DWORD UpdateNtmsOmidInfo(
[in] HANDLE hSession,
[in] LPNTMS_GUID lpMediaId,
[in] DWORD labelType,
[in] DWORD numberOfBytes,
[in] LPVOID lpBuffer
);
參數
[in] hSession
OpenNtmsSession 函式所傳回之會話的句柄。
[in] lpMediaId
邏輯媒體片段的唯一標識符。
[in] labelType
標籤類型。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
lpBuffer 參數包含NTMS_FILESYSTEM_INFO結構。 此旗標用於包含檔案系統的媒體。 |
|
lpBuffer 參數包含應用程式捲標的原始位元組。 此旗標用於包含應用程式寫入標籤的媒體。 |
[in] numberOfBytes
在 lpBuffer 參數中傳送的位元元組數目。
[in] lpBuffer
標籤資訊。 此參數的格式取決於 labelType 參數的值。
傳回值
此函式會傳回下列其中一個值。
值 | 意義 |
---|---|
|
拒絕存取一或多個 RSM 物件。 |
|
資料庫查詢或更新失敗。 |
|
hSession 參數中指定的值無效。 |
|
無法從資料庫擷取邏輯媒體定義。 |
|
無法從資料庫擷取側邊定義。 |
|
lpMediaId 參數為 NULL。 |
|
無法連線到 RSM 服務。 |
|
函式成功。 |
備註
應用程式會使用 UpdateNtmsOmidInfo 函式所提供的資訊來更新 RSM,而 RSM 會驗證資料庫中的資訊。 卷標資訊會與這個 LMID 相關聯的側儲存在 RSM 資料庫中。
UpdateNtmsOmidInfo 函式必須在 RSM 伺服器上執行。 遠端執行此函式會導致錯誤。
對於磁帶媒體 lpBuffer ,必須指向存放磁帶上剛寫入標籤的緩衝區。 此緩衝區中的數據會直接傳遞至每個 MLL 的 ClaimMediaLabel 進入點。 其中一個已安裝的 ML 必須辨識此資料中的有效標籤。
對於具有文件系統的媒體, lpBuffer 必須是包含下列結構的緩衝區指標:
typedef struct {
WCHAR FileSystemType[64];
WCHAR VolumeName[256];
DWORD SerialNumber;
} NTMS_FILESYSTEM_INFO;
RSM 會使用此文件系統資訊作為 OMID。 格式公用程式 (LDM、explorer、format.com 等) 實際上會執行與這個呼叫相同的功能。 使用第三方文件系統類型執行自己的格式設定或格式的應用程式,應該只需要呼叫 File System Media 的 UpdateNtmsOmidInfo 。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | ntmsapi.h |
程式庫 | Ntmsapi.lib |
Dll | Ntmsapi.dll |