【问题标题】:"Access to Message Queuing system is denied" exception in console application控制台应用程序中的“访问消息队列系统被拒绝”异常
【发布时间】:2013-11-07 06:21:55
【问题描述】:

我有一个可以作为 Windows 服务或独立控制台运行的应用程序。它被远程部署在我客户的服务器上。当我远程桌面进入服务器时,我使用用于运行我的应用程序的 Windows 服务配置的相同域帐户。因此,将应用程序作为 Windows 服务或控制台运行绝对是在相同的凭据下完成的。或者是吗?问题是我的控制台抛出“访问消息队列系统被拒绝”异常,而 Windows 服务对此没有任何问题。访问 MSMQ 系统的应用程序的所有功能都封装在一个 .dll 中,供 windows 服务和控制台使用,因此应该没有区别。

关于我应该改变什么的任何想法?

【问题讨论】:

  • 在远程桌面会话期间在命令提示符下运行 WHOAMI 时会显示什么?是您期望的帐户吗?

标签: message msmq queuing


【解决方案1】:

我创建了一个与 MSMQ 交互的 Windows 服务(一个愚蠢的数据交换应用程序,对安全性没有要求)。

我必须使用计算机管理中的消息队列属性窗格禁用未经身份验证的 RPC 调用才能使其正常工作。否则会抛出System.Messaging.MessageQueueException (0x80004005): Access to Message Queuing system is denied

服务也在本地系统下运行(我记得是默认的)

【讨论】:

    【解决方案2】:

    执行服务/控制台的用户应该有权访问 MSMQ。 请检查您的实例是否属于这种情况。

    【讨论】:

      猜你喜欢
      • 2012-04-10
      • 2011-09-24
      • 2012-11-05
      • 2011-04-28
      • 2011-03-27
      • 2013-09-30
      • 1970-01-01
      • 2019-03-04
      相关资源
      最近更新 更多