CreateStdAccessibleProxyA 関数 (oleacc.h)

システム指定のユーザー インターフェイス要素の指定したクラスのプロパティとメソッドを持つアクセス可能なオブジェクトを作成します。

構文

HRESULT CreateStdAccessibleProxyA(
  [in]  HWND   hwnd,
  [in]  LPCSTR pClassName,
  [in]  LONG   idObject,
  [in]  REFIID riid,
  [out] void   **ppvObject
);

パラメーター

[in] hwnd

種類: HWND

アクセス可能なオブジェクトが作成されるシステム提供のユーザー インターフェイス要素 (コントロール) のウィンドウ ハンドル。

[in] pClassName

種類: LPCTSTR

アクセス可能なオブジェクトが作成されるシステム提供のユーザー インターフェイス要素のクラス名の null で終わる文字列へのポインター。 ウィンドウ クラス名は、一般的なコントロール (Comctl32.dll で定義)、定義済みのコントロール (User32.dll で定義)、またはウィンドウ要素の 1 つです。

[in] idObject

型: LONG

オブジェクト ID 通常、この値は OBJID_CLIENTです。これはオブジェクト識別子定数の 1 つですが、別のオブジェクト識別子である可能性があります。

[in] riid

型: REFIID

要求されたインターフェイスの参照識別子。 この値は、IID_IAccessible、IID_IDispatch、IID_IEnumVARIANT、またはIID_IUnknownのいずれかです。

[out] ppvObject

型: void**

指定したインターフェイスのアドレスを受け取るポインター変数のアドレス。

戻り値

型: STDAPI

成功した場合は、S_OK を返します。

成功しなかった場合は、標準 の COM エラー コードを返します。

注釈

サーバー アプリケーションは、システム提供のコントロールに似たカスタム コントロールが含まれている場合に、この関数を呼び出します。 サーバー アプリケーションは CreateStdAccessibleProxy を 呼び出して、カスタム コントロールと一致させるために必要に応じて IAccessible のメソッドとプロパティをオーバーライドできます。 または、サーバー開発者は、 CreateStdAccessibleProxy で必要だった難しいサブクラス化手法を使用せずに、動的注釈を使用して特定のプロパティをオーバーライドすることもできます。 サーバー開発者は、子要素の非表示やプレースホルダーの子要素の作成など、構造上の変更に CreateStdAccessibleProxy を引き続き使用する必要があります。 この方法により、サーバー開発者は 、すべての IAccessible プロパティとメソッドを完全に実装する作業が節約されます。

この関数は CreateStdAccessibleObject に似ていますが、 CreateStdAccessibleObject では 常に hwnd に関連付けられているクラス名が使用されますが、 CreateStdAccessibleProxy ではクラス名をパラメーターとして指定できます。

CreateStdAccessibleProxy を使用して、スーパークラス化されたユーザー インターフェイス要素のアクセス可能なオブジェクトを作成します。 ユーザー インターフェイス要素がスーパークラス化されると、アプリケーションは、基になる定義済みコントロールとは異なるウィンドウ クラス名を持つカスタム コントロールを作成します。 hwnd パラメーターに関連付けられているクラス名はスーパークラス ウィンドウ クラス名であるため、pszClassName で基底クラス名 (スーパークラス コントロールの基になっているシステム クラス名) を指定します。

注意

oleacc.h ヘッダーは、CreateStdAccessibleProxy をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー oleacc.h
Library Oleacc.lib
[DLL] Oleacc.dll
再頒布可能パッケージ SP6 以降および Windows 95 を使用した Windows NT 4.0 のアクティブなアクセシビリティ 1.3 RDK

こちらもご覧ください

付録 A: サポートされているユーザー インターフェイス要素リファレンス

CreateStdAccessibleObject

IDispatch

カスタム ユーザー インターフェイス要素を公開するためのショートカット