无论如何根据系统区域设置设置注册表?例如,我创建以下注册表项而不考虑系统区域设置,并且我只想在系统操作系统使用阿拉伯语和希伯来语时创建此条目。请建议。
<Component Id="HelpViewer_Browser_Emulation" Guid="*">
<RegistryValue Root="HKLM" Id="HelpViewer_Browser_Emulation" Key="SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION"KeyPath="yes" Type="integer" Value="10001" Name="myapp.exe"/></Component>
答案 0 :(得分:2)
我已经通过添加这个条件来解决这个问题。
<Property Id="REGIONLANG">
<RegistrySearch Id="REGIONLANG_VAL"
Root="HKCU"
Key="Control Panel\International"
Name="sLanguage"
Type="raw" />
</Property>
<Component Id="HelpViewer_Browser_Emulation" Guid="*" >
<Condition>
<![CDATA[REGIONLANG = "ARA"]]>
</Condition>
<RegistryValue Root="HKLM" Id="HelpViewer_Browser_Emulation" Key="SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION" KeyPath="yes" Type="integer" Value="10001" Name="myapp.exe"/>
</Component>
答案 1 :(得分:1)
您需要检查语言的注册表并将其保存为可变,然后将其用作组件元素中的条件。
<util:RegistrySearch Id="Path"
Variable="REGIONLANG"
Root="HKCU"
Key="Control Panel\International\sLanguage"/>
然后在组件元素中添加一个条件。
例如:
<Condition>
<![CDATA[REGIONLANG = 'Place the correct string']]>
</Condition>