次の方法で共有


IFunctionDiscoveryProvider::InstancePropertyStoreValidateAccess メソッド (functiondiscoveryprovider.h)

[関数検出は、[要件] セクションで指定したオペレーティング システムで使用できます。 以降のバージョンでは変更または使用できない場合があります。]

プロバイダーが要求されたアクセスをサポートしていることを確認します。 これは、プロバイダーが dwStgAccess パラメーターによって渡されたアクセス モードをサポートしていることを確認するために、関数インスタンスで OpenPropertyStore が呼び出されたときに呼び出されます。

このメソッドは、プロバイダーの Initialize メソッドが pdwStgAccessCapabilities パラメーター値 -1 を返す場合にのみ呼び出されます。

構文

HRESULT InstancePropertyStoreValidateAccess(
  [in] IFunctionInstance *pIFunctionInstance,
  [in] INT_PTR           iProviderInstanceContext,
  [in] const DWORD       dwStgAccess
);

パラメーター

[in] pIFunctionInstance

IFunctionInstance インターフェイスへのポインター。

[in] iProviderInstanceContext

特定の関数インスタンスに関連付けられているコンテキスト。

[in] dwStgAccess

検証するアクセス モード。 このメソッドでは、次のモードがサポートされています。

STGM_READ

STGM_READWRITE

STGM_WRITE

戻り値

可能な戻り値には、次のものが含まれますが、これらに限定されません。

リターン コード 説明
S_OK
メソッドは正常に完了しました。
E_NOTIMPL
プロバイダーはインスタンス プロパティ ストアを実装しません。
STG_E_ACCESSDENIED
呼び出し元が十分なアクセス権を持っていないか、探索プロバイダーがそのプロパティ ストアへの書き込みアクセスを許可していないか、この関数インスタンスに対して別のプロパティ ストアが既に開かれているため、メソッドは書き込み可能なプロパティ ストアを開くことができませんでした。
E_INVALIDARG
dwStgAccess の値が無効です。
E_OUTOFMEMORY
メソッドは、この操作を実行するために必要なメモリを割り当てることができません。

注釈

STG_E_ACCESSDENIED戻り値の正確な意味は実装固有です。 InstancePropertyStoreValidateAccess メソッドを実装すると、指定された任意の関数インスタンスで、指定された dwStgAccess モード値のSTG_E_ACCESSDENIEDを返すことができます。

要件

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

こちらもご覧ください

IFunctionDiscoveryProvider