WM_RENDERALLFORMATS メッセージ
クリップボード所有者が 1 つ以上のクリップボード形式のレンダリングを遅延させた場合は、破棄される前にクリップボード所有者に送信されます。 クリップボードの内容を他のアプリケーションで引き続き使用できるようにするには、クリップボードの所有者は、生成できるすべての形式でデータをレンダリングし、 SetClipboardData 関数を呼び出してクリップボードにデータを配置する必要があります。
ウィンドウは、WindowProc 関数を介してこのメッセージを受け取ります。
#define WM_RENDERALLFORMATS 0x0306
パラメーター
-
wParam
-
このパラメーターは使われていないので、0 にする必要があります。
-
lParam
-
このパラメーターは使われていないので、0 にする必要があります。
戻り値
アプリケーションでこのメッセージを処理する場合は、0 を返す必要があります。
解説
WM_RENDERALLFORMATS メッセージに応答する場合、アプリケーションは OpenClipboard 関数を呼び出し、SetClipboardData を呼び出す前に GetClipboardOwner 関数を呼び出して、まだクリップボード所有者であることをチェックする必要があります。
WM_RENDERALLFORMATS メッセージを受け取った後、クリップボードを開く前に別のアプリケーションがクリップボードを開いて所有権を取得し、アプリケーションのデータを上書きしてはならないため、アプリケーションはクリップボードを開いた後もクリップボードの所有者であることをチェックする必要があります。
ほとんどの場合、アプリケーションは SetClipboardData を呼び出す前に EmptyClipboard 関数を呼び出さないでください。これにより、アプリケーションが既にレンダリングしたクリップボード形式が消去されるためです。
アプリケーションが戻ると、システムは、使用可能なクリップボード形式の一覧から、制限されていない形式をすべて削除します。 遅延レンダリングの詳細については、「 遅延レンダリング」を参照してください。
必要条件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows 2000 Server [デスクトップ アプリのみ] |
ヘッダー |
|