我正在尝试为ASP.NET网站制作安装程序。我需要确保目标机器安装了sqlxml。
我必须验证目标计算机是否已安装该软件,如果没有,请在主安装之前或之后启动.msi文件。
我是设置项目的新手,所以也许这很明显,但是在浏览网页几个小时后我找不到满意的解决方案。我一直在阅读WiX等等,但我正在寻找(如果可能的话)一个简单的解决方案。
谢谢你们两位!
我知道安装程序无法运行另一个安装程序。我在思考类似于先决条件的功能(在项目属性中)。在那里,我可以检查一个组件,如果没有,它将自动安装。我不需要做任何其他事情。但是,对我来说最重要的是,如果不需要,安装将无法运行。
我也尝试过.msm解决方案,但我找不到任何解决方案。也许我可以自己做一个?我还没试过。
答案 0 :(得分:5)
不幸的是,您无法从另一个安装程序运行一个安装程序,因为一次只能运行一个安装程序。你需要将它们链接在一起并一个接一个地运行。谷歌“msi链接”。这通常是Visual Studio等产品使用外部setup.exe然后依次运行安装程序的原因。
答案 1 :(得分:4)
您似乎需要“链接”安装http://objectmix.com/xml-soap/84668-installing-sqlxml-net-app.html
获取redist您是否将此添加为安装的预先要求? 你用什么来构建创建安装?
编辑:
我看看你如何检查SQLXML是否已经安装并遇到这个问题:
http://www.tech-archive.net/Archive/SQL-Server/microsoft.public.sqlserver.xml/2005-04/msg00110.html
我刚刚使用的系统有以下密钥HKEY_CLASSES_ROOT \ SQLXMLX(注意最后的X),因此您可能需要对实际密钥进行更多调查。
我不熟悉Visual Studio安装创作,但如果您可以在AppSearch和RegLocator表中添加条目,则应该能够在安装开始时检查注册表项是否存在。见这里
http://msdn.microsoft.com/en-us/library/aa371564(VS.85).aspx
Reglocator表为您提供了使用注册表中的值设置属性的选项(如果找到)。然后,您可以在自定义操作的条件中使用它。
要拼凑很多东西,但我希望它能让你朝着正确的方向前进。
答案 2 :(得分:1)