メッセージ

[戻る]
黄色い雲 2002/07/27(土) 03:59:59
ちょぅ〜初心者のものです。よろしくお願いします。

ある同一のプログラムを二つの環境において同じ操作をしました。
発生しているメッセージをSpy++で調べたところ
異なるメッセージが発生していました。
一方ではWM_COMMANDが発生していて、もう片方ではWM_USERです。
こういう事はあるのでしょうか?
これは、OSあるいはVCが原因でしょうか? 謎めいています。
それぞれの環境は、

1)
・Visual Studio 6.0
・Windows XP

2)
・Visual Studio.NET
・Windows 2000

です。
もしわかっていたら、あるいは、これを見ればわかるよ! とか
こうではないかな? など推測でもいいです。
情報をくださいませ。よろしくお願いします。

wood 2002/07/27(土) 13:24:12
物(OS、開発環境)が変われば、変わるのではないですか
ここのスレッドでも最近見かけるのですか
WIN2000で動作していたものがXPでは同じ動作しなくなった
など良く見ますけど

>一方ではWM_COMMANDが発生していて、もう片方ではWM_USERです
どっちでどうなのでしょうか

MSDNにXPについての動作の違いについて載っていないものでしょうか
2002年2月以降もので

黄色い雲 2002/07/28(日) 14:35:50
>どっちでどうなのでしょうか

WM_COMMAND -> Windows XP
WM_USER -> Windows 2000

です。
ユーザーがメニュー項目を選択したことにより発生するメッセージなので
OSが何であっても、WM_COMMANDが発生していい感じがしますが...(汗)

ちなみに、選択したメニューはWindowsエクスプローラの「表示」-「詳細」です。
メインフレームから選択すると、どちらのOSでもWM_COMMANDが発生しますが
ファイルリスト上で右クリックして表示させたコンテキストメニューから
選択すると上記の違いが発生します。


とりあえず、woodさんのアドバスにしたがって、MSDNを調べてみます!!!

YuO [E-Mail] 2002/07/28(日) 22:23:00
とりあえず,
> Windowsエクスプローラ
はOS付属のプログラムですから,Windows 2000とWindows XPにおいて,
> 同一のプログラム
ではないです。

異なるプログラムですから,実装詳細が異なってもおかしくありません。

黄色い雲 2002/07/29(月) 01:46:40
[[解決]]
Yuoさんの言うとおり、同一ではありませんね。
スッキリしました。ありがとうございました。

古いスレッドには追加発言できません。