2012-02-09 41 views
2

我有一個基本的安裝程序,可以選擇爲所有用戶安裝還是僅爲當前用戶安裝。基於這個選擇,我複製了通用應用數據或本地應用數據中的幾個文件。應用程序中可用的安裝程序選項?

我的問題是,我該如何讓我的應用程序知道已經安裝了這些文件的位置。我並不是說提供硬編碼路徑,但更像是提供在Environment.SpecialFolder.LocalApplicationData(單用戶)和Environment.SpecialFolder.CommonApplicationData(所有用戶)之間進行選擇的能力。

+1

總是把它們放在同一個位置不是更容易嗎?如果這個「必須」完成,我會做的是使用CustomAction將文件從一個位置移動到另一個位置。當然,簡單的解決方案和Microsoft可能會建議的一個方法是始終將文件放在CommonApplicationData文件夾中。 – 2012-02-09 15:36:28

+0

@Ramhound - 我同意 - 它會更容易,如果你能執行一個任務([設置項目支持這一(http://msdn.microsoft.com/en-us/library/5f981xa1.aspx)),但如果你不能控制安裝人員的分配手段 - 這可能很困難。 – SliverNinja 2012-02-09 15:43:39

+0

這很有道理。但我擔心任何用戶帳戶控制限制。我們不想在這方面實現任何東西,只想使用用戶文件夾來保存數據,而不必擔心Windows安全問題。 CommonApplicationData文件夾是否需要提升特權才能在其中寫入數據? – Paul 2012-02-09 15:46:20

回答

1

從應用程序中找出數據所在的文件夾的一種簡單方法是檢查LocalApplicationData,如果有,請使用它,否則檢查CommonApplicationData文件夾。