共用方式為


ClickOnce 和應用程式設定

更新:2007 年 11 月

Windows Form 的應用程式設定可以很容易地在用戶端上建立、儲存並維護自訂應用程式和使用者偏好設定。下列文件將會說明應用程式設定檔如何在 ClickOnce 應用程式中運作,以及當使用者升級至下一個版本時,ClickOnce 如何移轉設定。

下列資訊僅適用於預設的應用程式設定提供者,亦即 LocalFileSettingsProvider 類別。如果您提供自訂的提供者,該提供者將會決定儲存資料的方式以及如何在不同的版本之間升級設定。如需應用程式設定提供者的詳細資訊,請參閱應用程式設定架構

應用程式設定檔

應用程式設定會使用到兩個檔案:app.exe.config 和 user.config,其中 app 是 Windows Form 應用程式的名稱;當您的應用程式第一次儲存使用者範圍的設定時,會在用戶端上建立 user.config,而相較之下,如果您定義設定的預設值,則 app.exe.config 會在部署之前存在。當您使用 Visual Studio 的 [發行] 命令時,就會自動加入這個檔案。如果您使用 Mage.exe 或 MageUI.exe 建立 ClickOnce 應用程式,當您填入 (Populate) 應用程式資訊清單時,就必須確定這個檔案會與應用程式的其他檔案一起包含。

在不是使用 ClickOnce 部署的 Windows Form 應用程式中,應用程式的 app.exe.config 檔會儲存在應用程式目錄內,而 user.config 檔則會儲存在使用者的 [Documents and Settings] 資料夾內。在 ClickOnce 應用程式中,app.exe.config 會位於 ClickOnce 應用程式快取內的應用程式目錄中,而 user.config 則位於該應用程式的 ClickOnce 資料目錄中。

不論您部署應用程式的方式為何,應用程式設定都會確保能夠安全地讀取 app.exe.config 及安全地讀取/寫入 user.config。

在 ClickOnce 應用程式中,應用程式設定所使用之組態檔的大小是由 ClickOnce 快取的大小所限制。如需詳細資訊,請參閱 ClickOnce 快取概觀

版本升級

就如同每個版本的 ClickOnce 應用程式獨立於所有其他版本,ClickOnce 應用程式的應用程式設定也獨立於其他版本的設定。當您的使用者升級至較新版的應用程式時,應用程式設定就會比較最新 (最高編號) 版本的設定與更新版本所提供的設定,然後將這些設定合併成一組新的設定檔。

下表將會說明應用程式設定如何決定要複製哪些設定。

變更類型

升級動作

加入至 app.exe.config 的設定

新的設定會合併至目前版本的 app.exe.config

從 app.exe.config 中移除的設定

舊的設定會從目前版本的 app.exe.config 中移除

設定的預設值已變更,本機設定仍然設定為 user.config 中的原始預設值

設定會合併至目前版本的 user.config 並以新預設值做為值

設定的預設值已變更,設定設為 user.config 中的非預設值

設定會合併至目前版本的 user.config 並保留非預設值

如果您已建立自己的應用程式設定包裝函式類別,而且想要自訂更新邏輯,就可以覆寫 Upgrade 方法。

ClickOnce 和漫遊設定

ClickOnce 並無法使用漫遊設定,此設定會讓您的設定檔隨著您在網路上的各電腦之間移動。如果您需要漫遊設定,就必須實作透過網路儲存設定的應用程式設定提供者,或是開發自己的自訂設定類別,以便在遠端電腦上儲存設定。如需設定提供者的詳細資訊,請參閱應用程式設定架構

請參閱

概念

ClickOnce 部署概觀

應用程式設定概觀

ClickOnce 快取概觀

在 ClickOnce 應用程式中存取本機和遠端資料