8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

wpf 应用程序设置实际上是如何工作的?

KVM 1月前

33 0

在我的应用程序中,我有一个带有 IP 地址 / 登录名 / 密码 / 记住我检查器的简单登录页面。当我检查记住我时,应用程序会将这些数据存储在以下文件中:C:\Users\user\AppData\Local\...

在我的应用程序中,我有一个带有 IP 地址/登录名/密码/记住我检查器的简易登录页面。

当我检查记住我时,应用程序将这些数据存储在以下文件中:C:\Users\user\AppData\Local\App\App.exe_Url_5b4qolbj3ip4ltms1ohyh4cdivud5wfg\1.0.0.0\user.config

这对我来说完全没问题,但问题是(我不知道为什么会发生这种情况)当我构建 SetupWizard.msi 时,此 user.config 是由应用程序文件夹中的应用程序创建的。

然后,当我执行程序并选中“记住我”框时,它不会将值存储在此应用程序创建的 user.config 中,但仍存储在 AppData 文件中。

有什么方法可以删除应用程序文件夹中的 user.config 并将其仅存储在 AppData 中吗?主要原因是此配置文件(由安装创建)有两个扩展名:App.exe.config。我不可能在发布时将其保留为那样。

保存代码

        public void Save_data()
    {
        if (CheckBoxRemCredts.IsChecked == true)
        {
            Properties.Settings.Default.userName = txtBoxLogin.Text;
            Variable.passEncrypted = (Encrypt(pswBox.Password));
            //  MessageBox.Show(Variable.passEncrypted); Debugging
            Properties.Settings.Default.userPass = Variable.passEncrypted;
            Properties.Settings.Default.ipAddress = txtBoxIP.Text;
            Properties.Settings.Default.Remme = "yes";
            Properties.Settings.Default.Save();
        }
        else
        {
            Properties.Settings.Default.userName = txtBoxLogin.Text;
            Properties.Settings.Default.userPass = pswBox.Password;
            Properties.Settings.Default.ipAddress = txtBoxIP.Text;
            Properties.Settings.Default.Remme = "no";
            Properties.Settings.Default.Reset();
        }
    }

设置.settings 文件:

   namespace SMS_Vrána.Properties {


[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.7.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {

    private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));

    public static Settings Default {
        get {
            return defaultInstance;
        }
    }

    [global::System.Configuration.UserScopedSettingAttribute()]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Configuration.DefaultSettingValueAttribute("")]
    public string userPass {
        get {
            return ((string)(this["userPass"]));
        }
        set {
            this["userPass"] = value;
        }
    }

    [global::System.Configuration.UserScopedSettingAttribute()]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Configuration.DefaultSettingValueAttribute("")]
    public string Remme {
        get {
            return ((string)(this["Remme"]));
        }
        set {
            this["Remme"] = value;
        }
    }

    [global::System.Configuration.UserScopedSettingAttribute()]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Configuration.DefaultSettingValueAttribute("")]
    public string ipAddress {
        get {
            return ((string)(this["ipAddress"]));
        }
        set {
            this["ipAddress"] = value;
        }
    }

    [global::System.Configuration.UserScopedSettingAttribute()]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Configuration.DefaultSettingValueAttribute("")]
    public string userName {
        get {
            return ((string)(this["userName"]));
        }
        set {
            this["userName"] = value;
        }
    }
}

}

帖子版权声明 1、本帖标题:wpf 应用程序设置实际上是如何工作的?
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由KVM在本站《vb.net》版块原创发布, 转载请注明出处!
最新回复 (0)
  • OP 代码中的 [global::System.Configuration.UserScopedSettingAttribute()] 暗示设置确实是用户范围的。

返回
作者最近主题: