我正在学习 WIX,我想为现有安装程序创建的消息队列添加权限,以便在安装程序运行后不必手动设置它们。
我有这段代码,但我不知道为什么它会导致像 Duplicate symbol 'User:UserAnonymousLogon' found 这样的错误。
<util:User Id="UserLocalService" CreateUser="no" Name="LOCAL SERVICE"/>
<util:User Id="UserEveryone" CreateUser="no" Name="Everyone"/>
<util:User Id="UserAnonymousLogon" CreateUser="no" Name="ANONYMOUS LOGON"/>
<msmq:MessageQueue Id="AutoAssignMQ" Label="autoassignqueue" PathName=".\Private$\autoassignqueue">
<msmq:MessageQueuePermission Id="LocalServiceFull" User="UserLocalService" QueueGenericAll="yes"/>
<msmq:MessageQueuePermission Id="EveryoneLimited" User="UserEveryone" ReceiveMessage="yes" PeekMessage="yes" ReceiveJournalMessage="yes" GetQueueProperties="yes" GetQueuePermissions="yes" WriteMessage="yes"/>
<msmq:MessageQueuePermission Id="AnonymousLimited" User="UserAnonymousLogon" GetQueueProperties="yes" GetQueuePermissions="yes" WriteMessage="yes"/>
</msmq:MessageQueue>
对于项目中也具有此代码片段但具有不同 MessageQueue ID 的每个文件,此错误会出现两次。util:User Id 在许多文件中重复出现,msmq:MessageQueuePermission Id 和 User 也是如此 - 每个文件是否必须是唯一的或类似的东西?
我想知道更多,但我没有找到任何我理解的内容。请告诉我如何以正确的方式做到这一点。