【发布时间】:2011-06-16 05:16:45
【问题描述】:
有谁知道如何使用 installshield 在 MSMQ 中创建私有队列?我的应用程序使用了一个,但我似乎无法完成它...
以前有人做过吗?如果是这样,请帮助我
谢谢!
【问题讨论】:
标签: queue msmq installshield-2010 installscript
有谁知道如何使用 installshield 在 MSMQ 中创建私有队列?我的应用程序使用了一个,但我似乎无法完成它...
以前有人做过吗?如果是这样,请帮助我
谢谢!
【问题讨论】:
标签: queue msmq installshield-2010 installscript
作弊可能更容易。
所有专用队列均从 MSMQ\Storage\LQS 目录中的文本文件加载。
您可以在测试机器上创建一个私有队列,然后将相应的文本文件复制到另一台机器上。启动 MSMQ 服务时,将读取文件并创建队列。
唯一的问题是确保安全权限将在新机器上工作,因为帐户 SID 也存储在文件中。将完全控制权授予特殊组“所有人”和“匿名登录”会删除安全性。
干杯
约翰·布雷克韦尔
【讨论】:
我认为 Installshield 无法做到这一点现成的,因此您将不得不使用自定义操作。
我没有使用过 MSMQ,但我必须创建一些安装程序来执行一些 Sharepoint 的工作(我必须创建一个与 Microsoft SQL 报告交互的安装程序),我认为方法可能类似。
我建议的第一件事是您使用 DTF (Deployment Tools Foundation) 自定义操作。这些是使用 DTF 框架的 .NET(C# 或 VB.NET)中编码的自定义操作。 (为了使用 DTF,您需要在您的开发机器中安装 WiX,这将在 Visual Studio 中为您添加一个新类型的项目以进行自定义操作)。通过使用 C#,您将能够为 MSMQ 使用现有的 .NET 类,这应该可以满足您的需要。
当您在 Visual Studio 中构建自定义操作项目时,您将获得一个特殊的 DLL 文件,然后您可以通过创建存储在二进制表中的 MSI DLL 自定义操作在 InstallShield 中使用该文件。在属性中你只需要引用你的 DLL 文件和你的函数名。
这只是一种方法,可能还有其他方法,但我希望它有所帮助。
问候。
【讨论】: