0
所有相關鏈接似乎都假定我在這些目錄中使用DirectoryRefs和CreateFolder。當我跑步時,我得到一個.wxs文件,它由<Directory>
標籤和<Component>
標籤組成,但不包含DirectoryRefs。我寧願不手動重寫整個5000行文件。有沒有辦法編輯這些標籤的文件夾權限?爲Wix設置文件夾和所有子文件夾的權限
所有相關鏈接似乎都假定我在這些目錄中使用DirectoryRefs和CreateFolder。當我跑步時,我得到一個.wxs文件,它由<Directory>
標籤和<Component>
標籤組成,但不包含DirectoryRefs。我寧願不手動重寫整個5000行文件。有沒有辦法編輯這些標籤的文件夾權限?爲Wix設置文件夾和所有子文件夾的權限
您不必重寫heat
自動生成的片段。您可以使用另一個片段中的DirectoryRef元素引用在那裏定義的目錄。
最有可能你想做到以下幾點:
首先,在熱產生的片段更改根目錄的ID。這可以通過heat.exe
的-dr <DirectoryName>
命令行開關完成。爲DirectoryName
選擇一個名稱,例如MY_ROOT_FOLDER
。這對於方便地參考DirectoryRef
元素中的那個目錄是必要的
接下來,創建一個特殊組件(在不同的片段中),它只包含權限功能。事情是這樣的:
<DirectoryRef Id="MY_ROOT_FOLDER">
<Component DiskId="1" Id="Permissions" Guid="GUID-GOES-HERE">
<Condition>...</Condition>
<CreateFolder>
<util:PermissionEx GenericAll="yes" User="[LOGON_ACCOUNT]" Domain="[LOGON_DOMAIN]" />
</CreateFolder>
</Component>
</DirectoryRef>
最後,不要忘了,包括這個組件到您選擇的一個特徵。
注意,在默認情況下<util:PermissionEx>
元素追加權限有問題的文件夾及其所有後代。
非常好,謝謝! – nweiler 2012-08-07 21:48:28