Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2010 自动获取项目时设置关键路径_Visual Studio 2010_Wix_Heat_Votive - Fatal编程技术网

Visual studio 2010 自动获取项目时设置关键路径

Visual studio 2010 自动获取项目时设置关键路径,visual-studio-2010,wix,heat,votive,Visual Studio 2010,Wix,Heat,Votive,我正在使用WiX的projectreference特性来使用Heat自动获取一个项目。这尤其有用,因为WiX安装程序是在本地和TFS2010构建服务器上构建的,当它构建在构建服务器上时,输出会重定向到不同的位置,这意味着如果我没有自动获取项目,试图为最近编译的项引用正确的位置会变得非常混乱 我有以下WiX“代码”来安装和启动服务: <ServiceInstall Id="MyService" Type="ownProcess" Vital="yes" Name="MyServiceN

我正在使用WiX的projectreference特性来使用Heat自动获取一个项目。这尤其有用,因为WiX安装程序是在本地和TFS2010构建服务器上构建的,当它构建在构建服务器上时,输出会重定向到不同的位置,这意味着如果我没有自动获取项目,试图为最近编译的项引用正确的位置会变得非常混乱

我有以下WiX“代码”来安装和启动服务:

<ServiceInstall Id="MyService"
 Type="ownProcess"
 Vital="yes"
 Name="MyServiceName"
 DisplayName="My Service Display Name"
 Description="My Service Description"
 Start="auto"
 Account="[SERVICEACCOUNT]"
 Password="[SERVICEPASSWORD]"
 ErrorControl="ignore"
 Interactive="no" />
<ServiceControl Id="StartService" Name="MyServiceName" Start="install" Wait="no" />
<ServiceControl Id="StopService" Name="MyServiceName" Stop="both" Wait="yes" Remove="uninstall" />

到目前为止,一切都很好。。。当安装程序尝试安装和启动Windows服务时,我遇到了一个问题,但是说“服务'MyServiceName'(MyServiceName)启动失败。请验证您是否有足够的权限启动系统服务”。如果我选择“忽略”按钮,安装将“成功”完成,但当我检查机器上安装的服务时,新服务不会列出

根据我的在线调查,我认为问题在于该服务实际上没有正确安装,因为我需要设置作为该服务运行的可执行文件的密钥路径,但由于我使用Heat收集文件,我找不到一种方法来完成此操作。。。除非我创建一个自定义操作,该操作将为我安装服务,允许我在安装完所有文件后指定可执行文件名。。。但这听起来不应该是正确的解决方案

有没有人有什么建议,或者他们遇到过同样的问题并提出了解决方案

谢谢

2010年10月7日更新:在我的WiX脚本中,我有以下内容:

<Directory Id="INSTALLLOCATION" Name="Dolphin Transfer Service Server" ComponentGuidGenerationSeed="AF89976D-CD66-4b94-911B-1D27F969BC14">
    <Component Id="ServiceComponent" Guid="F55415F7-803C-4a83-A677-C0F882699374">
        <ServiceInstall Id="DolphinTransferService" Type="ownProcess"...


heat的输出是WXS编写,每个组件有一个文件。这是默认行为,不能使用标准热开关进行更改。这样做是为了本机遵循组件规则

如果组件包含单个文件,则此文件将自动成为密钥路径。因此,如果您不转换热量输出并遵守“一个组件-一个文件”的规则,那么这一定不是您得到错误的原因


我建议调查详细日志,看看它是否包含对您面临的故障的更详细描述。

日志中没有任何值得注意的内容。“操作:安装”部分包含大量“设置缓存的产品上下文…”键入消息,然后“注意:1:22282:3:Error 4:SELECT
Message
FROM
Error
其中
Error
=1715”。然后它说它成功地完成了。。。