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
ラベルの種類。 このパラメーターには、次の値のいずれかを指定できます。
[in] numberOfBytes
lpBuffer パラメーターで送信されたバイト数。
[in] lpBuffer
ラベル情報。 このパラメーターの形式は 、labelType パラメーターの値によって異なります。
戻り値
この関数は、次のいずれかの値を返します。
値 | 意味 |
---|---|
|
1 つ以上の RSM オブジェクトへのアクセスは拒否されます。 |
|
データベースのクエリまたは更新に失敗しました。 |
|
hSession パラメーターで指定された値が無効です。 |
|
データベースから論理メディア定義を取得できません。 |
|
データベースからサイド定義を取得できません。 |
|
lpMediaId パラメーターは NULL です。 |
|
RSM サービスに接続できません。 |
|
関数は成功しました。 |
注釈
アプリケーションは UpdateNtmsOmidInfo 関数によって提供される情報を使用して RSM を更新し、RSM はデータベース内の情報を検証します。 ラベル情報は、この LMID に関連付けられた側を持つ RSM データベースに格納されます。
UpdateNtmsOmidInfo 関数は、RSM サーバーで実行する必要があります。 この関数をリモートで実行すると、エラーが発生します。
テープ メディア の場合 lpBuffer は、テープに書き込まれたラベルを保持するバッファーを指す必要があります。 このバッファー内のデータは、各 MLL の ClaimMediaLabel エントリ ポイントに直接渡されます。 インストールされている MLL の 1 つは、このデータ内の有効なラベルを認識する必要があります。
ファイル システムを含むメディアの場合、 lpBuffer は、次の構造を含むバッファーへのポインターである必要があります。
typedef struct {
WCHAR FileSystemType[64];
WCHAR VolumeName[256];
DWORD SerialNumber;
} NTMS_FILESYSTEM_INFO;
RSM では、このファイル システム情報が OMID として使用されます。 フォーマット ユーティリティ (LDM、エクスプローラー、format.com など) は、この呼び出しと同じ機能を効果的に実行します。 サードパーティのファイル システムの種類を持つ独自の書式設定または形式を実行するアプリケーションは、ファイル システム メディアの UpdateNtmsOmidInfo を呼び出す必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | ntmsapi.h |
Library | Ntmsapi.lib |
[DLL] | Ntmsapi.dll |