我正在尝试调整在 VS 2008/C# 中开发的应用程序,该应用程序通过使用 Control.WndProc 方法侦听另一个应用程序的 WM_ 消息。当“app.exe”版本运行时,WM_USER 消息可见并被处理;但是,当运行“app.vshost.exe”版本时,这些相同的消息对应用程序不再可见,因此不会被处理。似乎“.exe”和“vshost.exe”版本都收到了其他 WM_ 消息(通过在 WndProc 上放置一个中断,但是 WM_USER 消息不能被困在“vshost.exe”版本中。应用程序的安全设置设置为“完全信任的应用程序”。
更令人困惑的是,当我将相同的源代码移动到另一台计算机时,第二台计算机能够看到并处理“app.exe”和“app.vshost.exe”版本的 WM_USER 消息,这导致了我相信这是我的开发计算机中的环境问题。
谁能指导我了解我的开发环境有什么独特之处可以解释 WM_USER 消息的可见性差异?