WM_COPYDATAはVista, Windows7ではそのまま使えない?

Windows7でWM_COPYDATAを試してみたらどうもメッセージが送られてこない。おかしい。
と思っていろいろ探してみたら……
WM_COPYDATA message - Windows applications | Microsoft Docs
のコメント欄に

Usage on Vista, Windows7 or later.
WM_COPYDATA is blocked by UIPI, and you have to add a filter to the message using ChangeWindowMessageFilter Function.

Vista, Windows7以降はUIPI(?)がブロックしてるのでChangeWindowMessageFilterを使ってね、とか。
Windowsもいろいろと細かいところで変わっていってるんだね……


ついでに、ChangeWindowMessageFilterのページを見るとこの関数は推奨しない、ChangeWindowMessageFilterExを使ってね、今後ChangeWindowMessageFilterはサポートしないよ、
とかふざけたことが書いてあるのでChangeWindowMessageFilterExを使ってなんとかするってことなのでしょう。
ChangeWindowMessageFilter関数は初出がVistaなのにもうサポートしないとかどういうことなの……
ただまあ、Exの方はWindows7以降なので、VistaはChangeWindowMessageFilterを使う必要があるのかな。


ChangeWindowMessageFilterEx function | Microsoft DocsのRemarksの一番下の行に

Certain messages whose value is smaller than WM_USER are required to be passed through the filter, regardless of the filter setting. There will be no effect when you attempt to use this function to allow or block such messages.

WM_USERより小さい値は無視する……?ってこと?
RegisterWindowMessageか、WM_USER + *とか使えってことですかね。面倒だなあ。