IVdsVDisk::Open メソッド (vds.h)

[Windows 8とWindows Server 2012以降、Virtual Disk Service COM インターフェイスは Windows Storage Management API に置き換えられます。

指定した仮想ディスク ファイルへのハンドルを開き、開いているハンドルを表すオブジェクトへの IVdsOpenVDisk インターフェイス ポインターを返します。

構文

HRESULT Open(
  [in]  VIRTUAL_DISK_ACCESS_MASK AccessMask,
  [in]  OPEN_VIRTUAL_DISK_FLAG   Flags,
  [in]  ULONG                    ReadWriteDepth,
  [out] IVdsOpenVDisk            **ppOpenVDisk
);

パラメーター

[in] AccessMask

開いている仮想ディスク 適用するアクセス権を指定するVIRTUAL_DISK_ACCESS_MASK フラグのビットマスク。

[in] Flags

仮想ディスクを開く方法を指定する OPEN_VIRTUAL_DISK_FLAG フラグのビットマスク。

[in] ReadWriteDepth

読み取り/書き込みを開くバッキング ストア チェーンの、子から始まるストア (バッキング ファイル) の数。 差分チェーン内の残りのストアは読み取り専用で開かれます。 (これは、マージ操作を成功させるために必要です)。

[out] ppOpenVDisk

仮想ディスク オブジェクトに対して開かれたハンドルを表す新しく作成されたオブジェクトへの IVdsOpenVDisk インターフェイス ポインターを受け取る変数へのポインター。 呼び出し元は、 IUnknown::Release メソッドを呼び出すことによってインターフェイス ポインターが不要になったときに解放する必要があります。

戻り値

このメソッドは、E_INVALIDARGやE_OUTOFMEMORYなどの標準の HRESULT 値と、VDS 固有の戻り値を返すことができます。 また、HRESULT_FROM_WIN32 マクロを使用して、変換されたシステム エラー コードを返すこともできます。 エラーは、VDS 自体または使用されている基になる VDS プロバイダー から発生する可能性があります。 可能な戻り値は次のとおりです。

リターン コード 説明
S_OK
メソッドは正常に完了しました。

解説

アプリケーションでは、 CoInitializeSecurity 関数を呼び出して、プロセス全体のセキュリティを初期化する必要があります。 dwImpLevel パラメーターは、RPC_C_IMP_LEVEL_IMPERSONATEに設定する必要があります。

Windows Server 2008、Windows Vista、Windows Server 2003: これらのアクションは、Windows 7 および Windows Server 2008 R2 まで必要ありません。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー vds.h
Library Uuid.lib

こちらもご覧ください

IVdsVDisk