WinForms,.NET-读取已编译程序中的设置文件

时间:2018-07-20 08:01:42

标签: c# .net winforms security passwords

我想知道将应用程序编译为二进制文件后,从设置文件中读取信息有多容易?
我的意思是,使用第三方应用程序(例如记事本或其他工具)提取设置数据。

如果用户按下“记住我”,然后要将加密的凭据放在Temp文件夹中的某处,我只想自动填写登录表单。为了能够在应用程序加载后跟踪文件,我想保存用户设置文件的路径,并在应用程序启动后读取它。

2 个答案:

答案 0 :(得分:0)

昨天我遇到了同样的问题。 要保存数据,请执行以下操作:

string[] accountData = { nick, password };
if(checkbox.Checked)
{
     System.IO.File.WriteAllLines(@"YourFile.txt", data);
}

要在文本框中自动填充,请执行以下操作:

string[] accountData = System.IO.File.ReadAllLines(@"YourFile.txt");
TextBox1 = accountData[0];
TextBox2 = accountData[1];

很高兴能为您提供帮助。

编辑:我假设您登录时只是将nick输入TextBox1并将password输入TextBox2中,如果您只想使用,可以使用更多数据string[] accountData = { variable1, variable2, variable3, etc... },读入只需使用accountData[1], accountData[2], accountData[3], etc...

如果您愿意,可以改用其他任何txt

答案 1 :(得分:0)

使用项目属性创建新设置并存储/更新设置值。下面是屏幕截图:

enter image description here

您可以使用Properties.Settings.Default.YourSettingName来访问您的设置。使用Properties.Settings.Default.Save()函数保存设置。下面是代码段:

Properties.Settings.Default.YourSettingName = "NewSettingValue";
Properties.Settings.Default.Save();

在编译应用程序之后,设置位于bin \ release目录中,其名称为YourApplicationName.exe.config。您可以在记事本中打开它并更改设置的值,然后exe将开始使用此更新的值,而无需重新编译。但是,如果正在运行.exe.config文件,则必须重新启动exe才能获取更新的值。

此外,建议不要在设置中存储敏感信息。希望它能达到目的。