2012-03-14 64 views
0

下面將申請(修改)權限遞歸,尊重當前的權限:如何在WiX中應用文件夾權限,保留現有權限,但無遞歸?

<util:PermissionEx User="[MYUSER]" Domain="[NT_DOMAIN]" GenericRead="yes" GenericWrite="yes" GenericExecute="yes" Delete="yes" DeleteChild="yes" /> 

但是,我不想遞歸應用吧!

我想要它非遞歸,即只是該文件夾,並沒有孩子。 (我相信舊元素清除父文件夾的權限繼承,這意味着它對我的目的沒有好處,因爲我必須保留現有的權限)。

有什麼辦法可以告訴PermissionsEx不遞歸應用權限嗎?我能否以某種方式組合PermissionEx和Permission節點以獲得所需的效果?或者,我唯一的選擇是向cacls.exe發出自定義操作命令行調用?

+0

只是放棄了,並用於在所述端CACLS: jimasp 2012-04-02 08:06:32

回答

0

我不確定任何三種內置模式(兩個來自MSI,另一個來自WiX擴展)處理這種情況。 FWIW,我認爲它不是你設置權限的對象的函數,而是所有選擇繼承的子對象的函數。換句話說,父母並不強制讓孩子選擇繼承。

所以你可能需要對所有的孩子做一些反思,然後設置它們來阻止傳播。努力和風險很高,所以我想知道爲什麼這是真正需要的,如果你不能創建你自己的新的子目錄並在那裏設置權限,那麼你不必擔心這個問題。

+0

我想你在這裏說的是,在Windows資源管理器中,默認是爲文件夾繼承父權限,這是有道理的。不過,我相信舊式的WiX權限節點並不是遞歸的,所以很奇怪,這個新的擴展沒有關閉遞歸的選項。我認爲這是與尊重當前權限有關,這可能意味着它也尊重當前的繼承權限。 WiX的主要問題似乎是(缺少)體面的文檔,浪費了很多開發時間來測試。 – jimasp 2012-04-02 07:58:17

+0

回覆:「我想知道爲什麼這實際上是需要的,如果你不能創建你自己的新的子目錄並在那裏設置權限」。因爲它是根網絡目錄(我需要授予特定用戶權限才能在那裏複製app_offline.htm文件),即我沒有選擇,因爲它是決定文件和文件夾位置的MS功能。 – jimasp 2012-04-02 08:04:31

+0

啊,我已經看到與clientaccesspolicy.xml類似的東西。如果你問我,這是MSFT的設計監督。 – 2012-04-02 13:19:31