2
제거 할 때 기존 구성 파일에서 요소를 제거해야합니다. 관련 윅스는 다음과 같습니다.Wix에서 왜 XmlConfig를 가져 오지 못하고 제거하고 삭제해도됩니까?
<Component Id="Dynamics.exe.config" DiskId="1" Permanent="yes">
<File Id="AppConfig" Name="Dynamics.exe.config" Source="$(var.ProgramFilesDir)\Microsoft Dynamics\GP2010\Dynamics.exe.config" KeyPath="yes" />
<util:XmlConfig
Id="AppSettings"
Action="create"
ElementPath="//configuration"
Name="appSettings"
File="[#AppConfig]"
Sequence="1"
VerifyPath="appSettings"
Node="element"
On="install"/>
<util:XmlConfig
Id="AppSettings1"
Action="create"
ElementPath="//configuration/appSettings"
Name="add"
File="[#AppConfig]"
Sequence="2"
VerifyPath="add[\[]@key='AppName'[\]]"
Node="element"
On="install"/>
<util:XmlConfig
Id="AppSettingsKey1"
ElementPath="AppSettings1"
Name="key"
Value="AppName"
File="[#AppConfig]"
Sequence="3" />
<util:XmlConfig
Id="AppSettingsValue1"
ElementPath="AppSettings1"
Name="value"
Value="MyApp"
File="[#AppConfig]"
Sequence="4" />
<util:XmlConfig
Id="AppSettingsRemove1"
Action="delete"
ElementPath="//configuration/appSettings"
File="[#AppConfig]"
Sequence="2"
VerifyPath="add[\[]@key='AppName'[\]]"
Node="element"
On="uninstall"/>
만들기 작업이 실행됩니다. 그러나 삭제/제거 작업은 실행되지 않습니다. 파일을 수정하지 않습니다. 제거하는 동안 파일을 건너 뛰는 것 같습니다.
내가 가진 어디 영구 = "예"영구 = "false"로 변경해야 건가요? 제거하는 동안 파일을 제거하지 않겠습니까? –
아마도 귀하의 질문에 대한 오해가 있습니다. 설치 제거 중에 설치 변경 사항을 롤백 하시겠습니까? 아니면 제거시 설치 중에 수행되지 않는 변경 만하고 싶습니까? – Amitabha
제거하는 동안 "삭제"작업이있는 요소를 사용하여 변경 내용을 롤백하고 싶습니다. 나는 그 행동을 해고 할 수 없다. 파일을 삭제하고 싶지 않습니다. 요약하면 AppSetting 요소 설치가 생성되면 제거 할 때 해당 요소를 제거해야합니다. 그러나 파일은 디스크에 남아 있어야합니다. –