2013-04-26 53 views
1

我是新來的WiX。使用WiX v3.0。如何給已安裝的應用程序的當前用戶完全訪問控制權限程序文件文件夾

我要爲應用程序創建一個安裝程序。

如果我安裝應用程序,它安裝在C:\Program Files\Appln\
我想給完全訪問控制Appln文件夾,同時安裝我的應用程序。

可能嗎?我不想手動設置文件夾的完整訪問控制權限。

+0

如果你的應用程序設計爲*每用戶*,那麼你可以從交換機的安裝*每臺機器*安裝到*每個用戶*。通過這種方式,應用程序被安裝到用戶的配置文件中,因此用戶擁有對應用程序文件夾的完全寫入權限。 – 2013-04-27 13:52:46

回答

1

首先,這不是推薦的設計。由於很多原因,用戶不應該能夠修改ProgramFilesFolder中的內容。但是,您可以使用Permission元素執行此操作。它會看起來有點像:

<Directory Id='TARGETDIR' Name='SourceDir'> 
    <Directory Id='ProgramFilesFolder' Name='PFiles'> 
     <Directory Id='ApplnFolder' Name='Appln'/> 
    </Directory> 
</Directory> 

<Component Id='GrantTooManyPermissionsToApplnFolder' Directory='ApplnFolder' 
      Guid='PUT-GUID-HERE'> 
    <CreateFolder> 
     <Permission GenericAll='yes' User='[UserSID]' /> 
    </CreateFolder> 
</CreateFolder> 

重要的部分是CreateFolderPermission元素。 CreateFolder默認爲ComponentDirectory,並給出了掛起Permission元素的位置。 Permission元素非常明瞭。該UserSID財產是一個built-in MSI property

+0

這也意味着,該應用程序在其他用戶帳戶下無法正常工作。 – 2013-04-27 13:57:30

+1

的確如此。這是一個非常糟糕的設計。您可以授予訪問「Everyone」而不是「UserSID」的權限,但這樣做可以減少*安全性。 – 2013-04-27 14:12:33

+0

這不安全。我只想強調OP可能面對的另一個問題。 – 2013-04-27 14:35:58

相關問題