2011-07-26 44 views
3

我想使用WIX创建一个Windows服务并为服务设置一些参数(不是参数)。我参考系统 - > [X] ControlSet - > [服务名称] - >参数下显示的参数。 任何人都知道我该怎么做? 谢谢。使用WIX注册带有参数的Windows服务

+0

请参阅http://stackoverflow.com/questions/10621082/wix-serviceinstall-arguments#comment13768062_10621082 –

回答

4

我这样做,通过手动添加我需要的注册表值,和它的作品确定:

<Component Id="NSSM" Guid="[MYGUID]"> 
    <File Id="NSSM" Name="nssm.exe" Source="nssm.exe" /> 
    <ServiceInstall Id="RenderSvc" Name="Render" DisplayName="Render" Type="ownProcess" Start="auto" ErrorControl="normal" /> 
    <RegistryKey Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\Render\Parameters"> 
    <RegistryValue Name="AppDirectory" Value="[F_ROOT]bin" Type="expandable" /> 
    <RegistryValue Name="Application" Value="[F_BIN]render.exe" Type="expandable" /> 
    <RegistryValue Name="AppParameters" Value="" Type="expandable" /> 
    <RegistryKey Key="AppExit"> 
     <RegistryValue Value="Restart" Type="string" /> 
    </RegistryKey> 
    </RegistryKey> 
    <ServiceControl Id="RenderSvc" Name="Render" Start="install" Stop="both" /> 
</Component> 

在奥卡检查导致MSI文件后,我认为这是创建注册表值创建服务之前。创建之后这样做会更好,但它适用于我,所以我在这里停了下来。