SetPropW 関数 (winuser.h)
指定したウィンドウのプロパティ リストに新しいエントリを追加するか、既存のエントリを変更します。 指定した文字列がリストにまだ存在しない場合、関数はリストに新しいエントリを追加します。 新しいエントリには、文字列とハンドルが含まれます。 それ以外の場合、関数は文字列の現在のハンドルを指定したハンドルに置き換えます。
構文
BOOL SetPropW(
[in] HWND hWnd,
[in] LPCWSTR lpString,
[in, optional] HANDLE hData
);
パラメーター
[in] hWnd
型: HWND
プロパティ リストが新しいエントリを受け取るウィンドウへのハンドル。
[in] lpString
型: LPCTSTR
null で終わる文字列、または文字列を識別する atom。 このパラメーターが atom の場合は、 GlobalAddAtom 関数の以前の呼び出しによって作成されたグローバル atom である必要があります。 atom は lpString の下位ワードに配置する必要があります。高次語は 0 である必要があります。
[in, optional] hData
型: HANDLE
プロパティ リストにコピーするデータへのハンドル。 データ ハンドルは、アプリケーションに役立つ任意の値を識別できます。
戻り値
種類: BOOL
データ ハンドルと文字列がプロパティ リストに追加された場合、戻り値は 0 以外になります。
関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
ウィンドウが破棄される前 (つまり、 WM_NCDESTROY メッセージの処理から戻る前)、アプリケーションはプロパティ リストに追加したすべてのエントリを削除する必要があります。 アプリケーションでは、 RemoveProp 関数を使用してエントリを削除する必要があります。
SetProp は、ユーザー インターフェイス特権分離 (UIPI) の制限の対象となります。 プロセスは、整合性レベルが低いか等しいプロセスに属するウィンドウでのみ、この関数を呼び出すことができます。 UIPI がプロパティの変更をブロックすると、 GetLastError は 5 を返します。
例
例については、「 ウィンドウ プロパティの追加」を参照してください。
注意
winuser.h ヘッダーは SetProp をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winuser.h (Windows.h を含む) |
Library | User32.lib |
[DLL] | User32.dll |
API セット | ext-ms-win-ntuser-window-l1-1-4 (Windows 10 バージョン 10.0.14393 で導入) |
関連項目
概念
リファレンス
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示