Я собираю установку для службы Windows (управляемой).Я хотел бы иметь возможность обновлять свой конфигурационный файл на основе пользовательского ввода из диалога.Файл конфигурации корректно обновляется, и служба Windows устанавливается, но не похоже, что служба регистрирует изменения в конфигурации.Я испортил последовательность?Я хочу запустить свое настраиваемое действие "ServiceConfig" до того, как служба будет установлена и запущена.
Вот выдержка из моих WiX-файлов:
<Component Id="cmpXyzService.exe" Guid="NOTAREAL-GUID-90X5-12C5-ABC123XYZ890">
<File Id="file_XyzService.exe" KeyPath="yes" Source="$(var.SourceDir)\XyzService.exe" />
<ServiceInstall Id="InstallXyzService" Name="Service.XYZ" DisplayName="XYZ Service" Start="auto" Vital="yes" Interactive="no" ErrorControl="normal" Type="ownProcess" />
<ServiceControl Id="ServiceControlXyzService" Name="Service.XYZ" Start="install" Stop="both" Remove="uninstall" Wait="no"/>
</Component>
<CustomAction Id="SetPropertiesForService" Property="ServiceConfig" Value="[SERVICEINSTANCENAME],[CONFIGVALUE1],[CONFIGVALUE2]" />
<Binary Id="UpdateConfigFileCustomAction.CA.dll" SourceFile="$(var.UpdateConfigFileCustomActionDir)\UpdateConfigFileCustomAction.CA.dll" />
<CustomAction Id="ServiceConfig" BinaryKey="UpdateConfigFileCustomAction.CA.dll" DllEntry="EditConfigFile" Execute="deferred" Return="check" />
<InstallExecuteSequence>
<Custom Action="SetPropertiesForService" Before="ServiceConfig" >NOT Installed</Custom>
<Custom Action="ServiceConfig" After="InstallFiles" >NOT Installed</Custom>
</InstallExecuteSequence>
Вот урезанная копиятаблица InstallExecuteSequence из Orca
StopServices VersionNT 1900
DeleteServices VersionNT 2000
RemoveFiles 3500
InstallFiles 4000
SetPropertiesForService NOT Installed 4001
ServiceConfig NOT Installed 4002
InstallServices VersionNT 5800
StartServices VersionNT 5900
RegisterUser 6000
RegisterProduct 6100
MsiPublishAssemblies 6250
PublishFeatures 6300
PublishProduct 6400
InstallFinalize 6600
RemoveExistingProducts 6601
Извинения, если я отредактировал что-то важное - я не хотел сбрасывать все, что имел.Я считаю, что я включил все, что имеет отношение.