【问题标题】:Must use exact identifier for APP object with verb SET必须使用带有动词 SET 的 APP 对象的确切标识符
【发布时间】:2013-02-20 16:30:40
【问题描述】:

我正在关注 this 关于允许 WCF 从 MSMQ 读取数据的文章,但此命令出现错误

appcmd set app "MSMQ/MsmqService" /enabledProtocols:net.msmq

MSMQ 是我的 IIS 托管网站的名称,MsmqService 是 .svc 文件的名称。

我得到的错误是

ERROR ( message:Must use exact identifer for APP object with verb SET. )

这是我的网站在 IIS 中的样子

【问题讨论】:

  • 您的网站称为 MSMQ 而不是默认网站(或类似网站)?
  • 是的 = 没错。

标签: wcf msmq


【解决方案1】:

我今天遇到了这个问题,所以这里是“确切标识符”错误的修复:

改变

"MSMQ/MsmqService"

"MSMQ/MsmqService/"

appcmd 只需要一个在末尾包含斜杠的路径(确切标识符)。

【讨论】:

    【解决方案2】:

    @Sachin,您尝试通过运行此命令执行的所有操作就是在虚拟目录的启用协议中设置 net.msmq。在此特定命令中,MsmqService 是您的网站 MSMQ 下的 vDir 的名称。如果您创建一个名为 MsmqService 的 vDir 并执行此命令,该命令将成功(而不是 svc 文件名)。并且 svc 文件应该具有 .svc 扩展名,以便 IIS 能够在请求到达时调用适当的处理程序。

    或者,您可以按照以下说明在 IIS UI 中执行相同的操作:

    1. 运行提示中的inetmgr
    2. 访问网站 MSMQ
    3. 导航到 vDir MsmqService。右键单击 -> 管理应用程序 -> “高级设置...”
    4. 请注意名为“启用的协议”的设置。在此处输入 net.msmq。点击确定。

    【讨论】:

    • 我没有名为 MsmqService 的虚拟目录。请看看我的编辑 - 我只有图片中显示的内容。
    • 然后您可以在站点级别执行相同的 UI 步骤。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-31
    • 2021-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多