2013-06-20 11 views
1

WIX가 설치된 레지스터 값을 유지하고 textbox.As에 저장할 수 있습니까? 레지스트리에 값을 저장하고 제품을 제거했습니다. WIX 설치를 설치하는 경우 레지스트리 값 존재 여부를 확인하는 방법 나는 레지스트리에서 값을 되찾고 WIX 텍스트 박스에 dispaly하고 싶다. 내가 좋아하는 일을하고 레지스트리에 쓰기 : -WIX 설치 읽기 레지스트리

<Property Id="COUNTRIES"> 
<RegistrySearch Id="RegistryWrite" Type="raw" Root="HKLM" Key="SOFTWARE\MYTest\Test" Name="COUNTRIES" /> 
</Property> 

    <RegistryKey Root="HKLM" Key="SOFTWARE\MYTest\Test" > 
    <RegistryValue Name="COUNTRIES" Value="[COUNTRIES]" Type="string" /> 

사람이 설치를 두 번하는 동안 레지스트리에서 값을 읽는 방법을 지금 날 도와 드릴까요?

+0

코드의 처음 세 줄은 ** 레지스트리에서 값을 읽고이를'COUNTRIES' 속성에 저장합니다. 작동하지 않는 것은 무엇입니까? – BBR

답변

1

정확하게 이해하면 제품 설치 사이에 레지스트리 값을 보유하려고하지만 레지스트리에 추가 한 사항은 설치 제거시 삭제됩니다. 옳은?

이 경우 RegistryKey/RegistryValue 요소가 Permanent 인 구성 요소를 표시하십시오. 제거한 후에도 계속 유지됩니다.

+0

레지스트리 값을 제거하는 것은 영구적 인 삭제 만하는 것이 아닙니다. 레지스트리에서 값을 유지하고 다시 읽고 텍스트 상자에 say를 표시해야합니다. – reapen

0

RegistrySearch를 사용하면 레지스트리 값을 얻을 수 있습니다. 예를 들어 : 기존 레지스트리 값을 유지하려면

<Property Id="SQLCLRTYPES"> 
<RegistrySearch Id="SqlClrTypesSearch" Root="HKLM" Type="raw" 
       Key="SOFTWARE\Microsoft\Microsoft SQL Server 2012 Redist\SQL Server System CLR Types\1033\CurrentVersion" 
       Name="Version"/> 

또한, 당신은 그것을 구현하는 구성 요소의 NeverOverwrite 속성을 사용할 수 있습니다.