寻找一种摆脱困境的方法,我的公司已经将自己画成了。
目前,通过手动复制文件并运行各种批处理文件来安装/卸载Windows服务。位置因站点而异,具体取决于安装的代码是用于生产还是测试用途。所以我的调试版本可能需要安装到
中 C:\someFolder\Site1\Test
虽然相同代码的Release版本将安装到
中 C:\someFolder\Site1
目前只有2个网站,但可能很快就会扩展。
我正在尝试组建一个WiX安装项目(VS2010,WiX 3.5)来处理安装。我无法更改安装文件夹定义(就像我想的那样!)而且我遇到了试图理解我如何处理问题的问题。成为WiX的新手并没有帮助。
答案 0 :(得分:0)
关于发布/调试版本的问题: 在代码中定义目标目录的位置,可以根据构建版本有条件地设置它。例如,Debug是一个可用的变量,可以像:
一样使用 <!-- inside of somefolder/site target definition, conditionally append test dir -->
<?ifdef var.Debug ?>
<Directory Id="TestId" Name="test" />
<?endif?>
您还可以在visual studio中为每种类型的版本添加其他构建因变量。这将是每个目标情境模型的唯一构建。这可能会让用户容易混淆他们应该使用哪个版本。
另一个模型 - 具有灵活目标位置的一个构建: 对于不同的站点目录:取决于如何创建这些站点。 如果它们存在于您的安装之前,则只需使用wix的directorysearch来设置用于构建目标目录的属性。 如果相反,目标目录是在安装时决定的,并且它基于用户的决定,那么您需要提示输入名称或类型(站点)。这类似于要求自定义安装目录的典型情况。您可以修改执行此操作的wix源中包含的示例自定义wix对话框之一,并将该对话框添加到项目的下一个/后一个流程中。