windows-7 - Win2008 R2 上的 MSMQ 不会收到来自旧客户端的消息

标签 windows-7 windows-xp windows-server-2008 windows-server-2003 msmq

我在这里与一个非常奇怪的问题作斗争。我有一个安装了消息队列的 Windows 2008 R2 服务器。在另一台机器上,运行 Windows 2003 的服务设置为将消息发送到 2008 服务器上的公共(public)队列。但是,消息永远不会出现在服务器上。

我编写了一个小型控制台应用程序,它只是将“Hello World”消息发送到 2008 机器上的测试队列。在 XP 或 2003 上运行这个应用程序完全没有结果。但是,当我尝试在我的 Windows 7 机器上运行该应用程序时,一条消息传递得很好。

我经历了各种安全设置,在所有机器上禁用了防火墙等。事件日志显示没有任何有趣的内容,客户端也没有抛出异常。

在服务器上运行数据包嗅探器 (WireShark) 只会发现一点点。尝试从 XP 或 2003 发送消息时,我只在端口 3527 上看到 ICMP 错误“端口无法访问”(我收集的是 MQPing 数据包?)。之后,沉默。当我从我的 Win7 客户端尝试时,Wireshark 显示了一个不错的小数据包流(正如预期的那样 - 消息从 Win7 传递得很好)。

我在服务器上启用了 MSMQ End2End 日志记录,但只有从我的 Win7 机器发送的消息中的条目出现在日志中。

所以不知何故,似乎消息在从 XP 或 2003 到我的 2008 服务器的路径上的某处被无声地丢弃。

有没有人知道可能导致这种神秘行为的原因?

最佳答案

一位名叫 John Breakwell (http://blogs.msdn.com/johnbreakwell/default.aspx) 的人对此进行了回复,并指出了我自己的一条线索,即 ICMP“无法访问的端口”线索。

他向我推荐了 technet article它告诉您如何重新启用在端口 3527 上运行的 ping 服务。只需要一个简单的注册表破解(并重新启动 MSMQ),现在我的 Win2008 服务器正在愉快地接收消息 :-)

关于windows-7 - Win2008 R2 上的 MSMQ 不会收到来自旧客户端的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2371905/

相关文章:

vb.net - Windows XP 上的错误 [IM002] [Microsoft][ODBC 驱动程序管理器]

python - 从 Windows XP 上的压缩标准库将 Python 3.3 嵌入到 C++ 中

postgresql - 谁负责更新 pg_timezone_names View ?

web - 服务器重启后 TeamCity 停止工作?

windows - Windows 7 上的 DNS 本地域反欺骗?

qt - 使用 Visual Studio 2012(64 位)编译 Qt 5.0

windows-7 - 注册DLL时出错

vb6 - 如何检测麦克风是否存在

windows-7 - GitHub noobian,我应该安装 msysGit 还是 Cygwin?

powershell - 在安装 Sharepoint 2010 之前卸载 PowerShell 1.0