我创建了一个用于发布web应用程序的安装程序。这没有任何问题。我创建了一个单独的安装程序来安装windows服务。这也没有任何问题。
由于它们从业务角度紧密相关,我将这两个安装项目合并为一个具有两个功能的项目。服务功能是可选的。 所有文件都将被移动到相应的目录,即web应用程序文件将被移动到wwwroot,服务应用程序文件将被移动到程序文件(86)\blah,但服务本身没有被创建。尽管我复制了它,就像其他项目一样,并将其绑定到正确的组件上。
我绞尽脑汁,经历了无数次,但在最初的服务安装项目和合并后的项目之间,我找不到任何差异。
我错过了什么?
下面是一个屏幕截图,显示该服务确实已设置
服务必须有一个组件来交付该服务的可执行文件。默认情况下(如果你只有一个功能),你不必担心这一点。但是,由于您现在有两个功能,请确保该组件包含在正确的功能中。此外,如果安装程序创建了一个日志文件(如果没有,我强烈建议打开它),请在其中搜索包含服务可执行文件的组件名称。如果未安装该服务,日志文件将告诉您跳过该组件的原因。