Windows installer Visual Studio MSI安装程序
我有一个Web安装项目安装程序,我希望默认安装过程中选择的站点和应用程序池。另外,我想在安装程序的构建过程中,让产品名称附加当前版本号Windows installer Visual Studio MSI安装程序,windows-installer,web-setup-project,Windows Installer,Web Setup Project,我有一个Web安装项目安装程序,我希望默认安装过程中选择的站点和应用程序池。另外,我想在安装程序的构建过程中,让产品名称附加当前版本号 任何帮助都将不胜感激!谢谢Visual Studio Web安装项目是一个非常简单(但不太灵活)的工具。不过,您有一些选择(假设您还没有准备好使用更灵活的东西,例如WiX或商业安装打包产品) 在生成后修改MSI 一种方法是在构建MSI文件后修改它 您可以添加以下属性: 添加名为TARGETSITE的属性,并将其设置为需要作为默认值的站点的元数据库路径。例如,/L
任何帮助都将不胜感激!谢谢Visual Studio Web安装项目是一个非常简单(但不太灵活)的工具。不过,您有一些选择(假设您还没有准备好使用更灵活的东西,例如WiX或商业安装打包产品) 在生成后修改MSI 一种方法是在构建MSI文件后修改它 您可以添加以下属性:
TARGETSITE
的属性,并将其设置为需要作为默认值的站点的元数据库路径。例如,/LM/W3SVC/2
TARGETAPPPOOL
的属性,并将其设置为需要作为默认值的应用程序池的名称。例如,MyAppPool
ProductName
属性来设置产品名称TARGETSITE
和TARGETAPPPOOL
属性指定值,例如:
msiexec /i MySetup.msi TARGETSITE=/LM/W3SVC/2 TARGETAPPPOOL=Pool2
但是,您不能以这种方式处理
ProductName
。在Orca中打开MSI。转到属性,单击鼠标右键,然后单击鼠标右键以添加行
属性:TARGETAPPPOOL
值:ASP.NET v4.0
可以使用此VBS脚本执行相同的操作:
Dim oDatabase 'As WindowsInstaller.Database
Const msiOpenDatabaseModeTransact = 1
Dim oInstaller 'As WindowsInstaller.Installer
Dim sFilePath 'As String
sFilePath = "C:\Test\MySetup.msi"
Set oInstaller = CreateObject("WindowsInstaller.Installer")
Set oDatabase = oInstaller.OpenDatabase(sFilePath, msiOpenDatabaseModeTransact)
sql = "INSERT INTO Property (Property, Value) VALUES ('TARGETAPPPOOL', 'ASP.NET v4.0')"
Dim oView 'As WindowsInstaller.View
Set oView = oDatabase.OpenView(sql)
oView.Execute
oView.Close
oDatabase.Commit
MsgBox ("Done!")
作为构建过程的一部分,您还可以使用MSIAPI()来自动化更改。您可以从这里获得一个使用MSIAPI的jscript示例(相应调整):非常感谢Dave和Kevin的回复。