1

我使用Microsoft團隊的擴展Visual Visual Studio 2017 Installer Projects爲Visual Studio的桌面應用程序創建MSI安裝程序。我已經成功創建了一個SetUp項目,並在SetUp項目的File System Editor中設置了所有必要的屬性(快捷菜單,程序文件菜單等)。安裝程序需要將XML文件部署到目標計算機上的公用文檔文件夾。 問題:如何定位安裝程序將安裝應用程序的用戶計算機上的公共文檔文件夾?將Visual Studio安裝項目定位到公共文檔文件夾

背景:該安裝程序是爲MS Office VSTO Add-In for WORD構建的,它的部署是通過Windows安裝程序(不是通過ClickOnce)完成的。根據授權管理系統,他們的XML配置文件需要部署到不是我們加載項目錄的應用程序目錄,而是加載加載項的應用程序目錄。在這種情況下,XML文件的推薦位置應該是公共文件夾,例如Vista和更高版本的Windows上的Public Documents文件夾。

回答

0

我剛剛點擊了VS2017安裝程序項目的UI。我沒有看到指定公共文檔文件夾的方法。您可以添加一個用戶定義的文件夾(右鍵單擊「文件系統」>添加特殊文件夾>用戶定義的文件夾),但限制爲predefined properties of Windows Installer,其中不包含公共文件夾。

如果您只需要安裝到通用文件夾中,但不要求它是公共文檔文件夾,則可以使用CommonAppDataFolder作爲替代方案。指定用於用戶定義文件夾的DefaultLocation。

否則,您可能會編寫一個自定義操作,調用SHGetKnownFolderPath(FOLDERID_PublicDocuments,...)並將結果分配給屬性。然後爲用戶定義文件夾的DefaultLocation指定該屬性。這是安裝程序項目的tutorial for writing a VB custom action

雖然我強烈建議完全擺脫安裝程序項目,並使用WiX toolset,而不是提供更多的靈活性。它也帶有一個很好的Visual Studio擴展。 WiX已經定義了已初始化爲公共文檔文件夾路徑的屬性WIX_DIR_COMMON_DOCUMENTSExample

+0

閱讀您的回覆後,我通讀您的[鏈接](https://manfredlange.blogspot.de/2013/05/wix-installing-files-to-public.html),然後按照[this](http ://stackoverflow.com/a/17410330/1232087)post和[this](http://wixtoolset.org/documentation/manual/v3/howtos/files_and_registry/add_a_file.html)能夠解決問題。感謝您甚至通過點擊VS2017安裝程序項目的UI來調查如何提供幫助。非常感激。我使用了最新版本的WiX 3.11 RC。 – nam

相關問題