SetWindowLongPtr / GetWindowLongPtr

%Subject%で警告が出るのはどうにかならんかのう…。

Win32だと 単なるマクロで SetWindowLong やら GetWindowLongr を見に行くから、 GWLP_USERDATA でポインタとか格納する所でまず「ポインタ切り詰めますよ〜」と警告がでる。 取得するときは LONG から ポインタへキャストする事になるので 「32bit から 64bit に拡張しますよ」 って警告が出る…

じゃぁ、警告を #pragma で off にするか? となると、それはそれでキケンなわけで。 GetWindowLongPtr とは関係ないところで、数値型 と ポインタ をキャストしたは良いものの本当に切り詰めちゃっててヤヴァイ状況のコードが発見できなくなる。


ではどうするかとなると、やっぱりラッパー関数作るしないんでしょうなぁ。(苦笑
そのラッパー関数のところだけ #pragma で off にして上手く誤魔化すしか…。

…まぁ、WTLには既に用意されているようですけど。(ぉ