我需要为在ASP.NET中开发的本地Web应用程序执行安装程序。 如何使用MSI安装程序在IIS上自动部署应用程序?
答案 0 :(得分:1)
WiX工具集(http://wixtoolset.org/)非常支持IIS网站安装程序。这是一个随机选择的任意教程,可以帮助您入门; http://blog.bartdemeyer.be/2013/10/create-an-installer-for-website-with-wix-part-1/
答案 1 :(得分:1)
FWIW,IsWiX项目模板(VS2012 +)在这个故事中表现出色。这是一个粗略的概述:
安装Windows Installer XML和工业强度Windows Installer XML
使用VS项目模板创建ASP.NET Web应用程序解决方案
名称:BookStore
位置:C:\ Source \ BookStore
解决方案名称:应用程序
选中创建解决方案的目录
选择单页应用程序,然后单击确定
右键单击解决方案资源管理器中的BookStore项目,然后选择发布
单击“自定义”并输入名称LocalDeploy,然后单击“确定”
选择FileSystem发布方法
输入.... \ Installer \ Deploy,然后点击发布
关闭解决方案
使用VS项目模板创建Windows Installer XML \ IsWiX解决方案(.MSI / .MSM)解决方案
名称:BookStore
位置:C:\ Source \ BookStore
解决方案名称:安装程序
选中创建解决方案的目录
双击解决方案资源管理器中的BookStoreMM.wxs。
选择工具| IsWiX AddIn
单击“文件和文件夹”
将要部署的文件和文件夹从源视图拖放到目标视图
单击“保存并关闭IsWiX”
在Visual Studio提示时单击“是”以重新加载源。看看IsWiX编写的XML。
右键单击BookStoreMM项目中的引用并添加对WixIIsExtension.dll的引用
双击BookStoreMM项目中的BookStoreMMcustom.wxs。
选择工具| IsWiX AddIn
单击命名空间
选择iis名称空间
单击“保存并关闭IsWiX”
在Visual Studio提示时单击“是”以重新加载源。看看IsWiX编写的XML。
在DirectoryRef元素下创建一个网站组件,并将ComponentRef元素添加到ComponentGroup元素。确切的元素和属性取决于应用程序的特定IIS需求。这是一般样本。
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:iis="http://schemas.microsoft.com/wix/IIsExtension">
<Fragment>
<!-- Reference Custom Components Below -->
<ComponentGroup Id="Custom">
<ComponentRef Id="webHomePage"/>
</ComponentGroup>
<!-- Author Custom Components Below -->
<DirectoryRef Id="MergeRedirectFolder">
<Component Id="webHomePage" Guid="someguid" KeyPath="yes">
<iis:WebSite Id="default" SiteId="*" Description="HomePage" Directory="MergeRedirectFolder" ConfigureIfExists="no">
<iis:WebAddress Id="AllUnassigned" Port="80" />
<iis:WebDirProperties Id="webDirPropsApi" AnonymousAccess="yes" WindowsAuthentication="no"/>
</iis:WebSite>
</Component>
</DirectoryRef>
</Fragment>
</Wix>