簡體   English   中英

在應用程序啟動中保存配置

[英]Save Config in the Application Startup

用戶的輸入保存在應用程序的配置文件中,因為每次重啟時軟件都需要使用此輸入:

  public void setAppSetting(string key, string value)
    {
        //Laden der AppSettings
        Configuration config = ConfigurationManager.
                                OpenExeConfiguration(
                                System.Reflection.Assembly.
                                GetExecutingAssembly().Location);

        if (config.AppSettings.Settings[key] != null)
        {
            config.AppSettings.Settings.Remove(key);
        }

        config.AppSettings.Settings.Add(key, value);
        config.Save(ConfigurationSaveMode.Modified);
    }

     public string getAppSetting(string key)
    {

        Configuration config = ConfigurationManager.
                                OpenExeConfiguration(
                                System.Reflection.Assembly.
                                GetExecutingAssembly().Location);

        return config.AppSettings.Settings[key].Value;
    }

加載應用設置:

private void Start_Closed(object sender, EventArgs e)
    {

        setAppSetting("benutzerEingabe", textBoxPath.Text);
        setAppSetting("benutzerEingabe", userConfigurePath);
    }

因此,當用戶解壓縮存在exe文件的zip文件時,存在沒有內容的內容文件。 所以我想要它。

 <?xml version="1.0" encoding="utf-8" ?>
 <configuration>
 </configuration>

首次使用應用程序后,配置將填充密鑰:

  <?xml version="1.0" encoding="utf-8" ?>
  <configuration>
 <appSettings>
    <add key="benutzerEingabe" />
 </appSettings>
 </configuration>

對我來說問題是當用戶將exe復制到其他地方並且第一次啟動此應用程序時,會有一個新的配置文件。 那就是問題所在。 是否有可能在exe文件中實現配置文件,以便此文件不會自行創建。 或者還有其他解決方案嗎?

你需要的是一個Installer exe或msi package 您可以通過在visual studio中創建msi項目來完成此操作。 使用此方法而不是提供exe文件,您將為我提供MSI文件。 因此,在安裝msi時,您可以以自動放置配置文件的方式捆綁您的exe。 您還可以使此安裝程序在用戶計算機上創建文件夾等。 非常有用。

http://www.codeproject.com/Articles/568476/Creating-an-MSI-Package-for-Csharp-Windows-Applica

http://support.microsoft.com/kb/307353

http://msdn.microsoft.com/en-us/library/cc766795.aspx

最好在公共位置創建一個文件,每次檢查公共位置是否存在文件,如果存在讀/寫值,否則創建文件

您可以使用XML文件或ini文件來保存數據。 所以,如果你改變exe位置,它不會影響你的執行。

您可以使用

Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)

作為您的常用文件夾。

您可以使用ConfigurationManager.OpenExeConfiguration手動加載配置文件

有過一個很好的例子在這里 :其移動保留的設置。

你可以直接使用c#中的設置來制作這些東西。 http://msdn.microsoft.com/en-us/library/aa730869(v=vs.80).aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM