5

我已经设置了一个 WCF 服务,该服务在使用 MSMQ 消息队列的 IIS 7 上运行,消息被正确放入服务器上的队列中,但 WCF 服务没有处理它们,因此队列只是建立起来。

4

2 回答 2

4

正如@FelicePollano 建议的那样,这可能是权限问题。以下是要检查的具体项目:

  1. 确保 Net.Msmq 侦听器适配器 Windows 服务的帐户对您的服务正在使用的队列具有以下权限:接收消息、查看消息、发送消息、获取属性和获取权限。您必须转到计算机管理器控制面板应用程序中的消息队列节点来设置/检查这些。默认情况下,这是网络服务帐户。

  2. 确保服务站点 AppPool 的帐户也具有队列的权限。权限应设置为完全控制。

如果这些没有以这种方式设置,则进行更改,重新启动 AppPool 并重新启动 Net.Msmq 侦听器适配器 Windows 服务。如果一切正常,队列应该会自动排空。

于 2011-05-20T14:48:22.477 回答
0

检查队列是否在服务中可见。有时,如果您使用已登录的用户创建队列,则 IIS 工作进程无法访问它。

于 2011-05-20T14:41:20.530 回答