나는 특정 레지스트리 값은 설치 후 존재 함을 주장 할, 그래서 나는 다음과 같은 구성 요소를 추가 :WiX : 제거시 레지스트리 값이 제거되는 것을 방지하려면 어떻게해야합니까?
<Component Id="RegistryEntryContextMenuOdt" Guid="4BA5BA24-4F65-4BDF-99EB-CB4B947F31A9" DiskId="1" KeyPath="yes">
<RegistryKey Id="RegKeyOdt" Root="HKCR" Action="create" Key=".odt">
<RegistryValue Type="string" Value="openDocument.WriterDocument.1" />
</RegistryKey>
</Component>
키/값이 이미 설치 전에 설정되어있을 수 있습니다. 그러나 값을 내 특정 값으로 설정해야합니다. 즉, 내 값으로 덮어 쓰게됩니다.
제 제품을 제거하면이 값은 항상입니다. 그러나 설치자가 값을 추가 한 경우에만 값을 제거하고 싶습니다. 설치 관리자가 방금 값을 수정 한 경우 이전 값을 복원해야합니다 (가능하지 않으면 내 값을 그대로 유지해야 함).
제거시 키 자체가 제거되지 않으므로주의하십시오. 이것은 RegistryKey
요소에 Action="create"
을 지정했기 때문에 올바르게 작동하는 것 같습니다.
RegistryValue
과 비슷한 설정이 있는데 값을 만들지 만 설치시 제거하지 않을 수 있습니까?
업데이트 : HKCR의 두 레지스트리 키는 모두 컴퓨터 전체에 적용됩니다. 즉, 레지스트리의 HKLM \ SOFTWARE \ Classes 지점에서 시작됩니다.
감사합니다. 매우 도움이됩니다. 이것을 체크해 보도록하겠습니다 :-) –
+1 KeyPath 코멘트! –