2013-07-02 58 views
0

我有一個WiX的安裝其寫入到註冊表: HKLM\Software\Foo如何使用WiX覆蓋註冊表項中的權限?

Foo及其後代應該僅由管理員編輯(用戶只能閱讀)

的實際情況是,Foo(在以前的版本中)已經以用戶(!!)的可編輯許可編寫。

考慮到這種情況,您將如何顯式刪除用戶在Foo(及其後代)中的可寫入權限?

我試過PermissionEx(來自util wix擴展),根本沒有好的結果(權限沒有改變)。代碼:

<Component Id="ComponentId" Guid="[GENERATE-GUID]]"> 
    <RegistryKey Id="reg857CD83358A344C2982DC6BA6B047754" Root='HKLM' Key='SOFTWARE\Foo' Action='createAndRemoveOnUninstall'> 
     <util:PermissionEx User="Users" GenericRead="yes" Read="yes" GenericWrite="no"/> 
     <RegistryValue Id="regFD4780BBE853437A9D778D0B51D2E6AD" Type='string' Key='Bar' Name='prop_name' Value='prop_value' KeyPath="yes"/> 
    </RegistryKey> 
</Component> 
+0

請發表您的答案,因爲答案並接受你滿意,這是最好的答案的時候。 –

+0

感謝@TomBlodget –

回答