一次验证用户输入以运行应用程序

时间:2019-09-30 12:50:37

标签: c# winforms validation

我已经在C#.NET中制作了一个WinForms应用程序。

在第一次运行时,我正在检查2个字符串是否相等,如果它为TRUE,则显示主要形式。但是,当前,只要我启动程序就进行此检查。

如何将“验证结果”传递给计算机,以便下次运行该应用程序时,不再需要检查?

2 个答案:

答案 0 :(得分:0)

您可以将检查结果保存到配置文件中,并在下次程序从配置文件启动时读取

答案 1 :(得分:0)

一种选择是将验证数据存储在注册表中。如果行数相等,则在注册表中创建一个分支并将必要的数据写入其中。接下来,在下次启动时,我们检查分支和其中的数据是否存在。我附上一个简短的例子。

        string FisrtString = "Temp";
        string SecondString = "Temp";
        string SubBaseKeyString = @"SOFTWARE\ApplicationName";
        RegistryKey vmsBaseKey = Registry.CurrentUser.OpenSubKey(SubBaseKeyString, true);
        if (vmsBaseKey != null)
        {
            var Value = vmsBaseKey.GetValue("Validate");
            if (Value != null)
            {
                if (Value.ToString() == "1")
                {
                    //The user check passed here, you can open the window
                }
            }
            else
            {
                //Here you must specify the action if the key is missing. Additional string comparison possible
            }
        }
        else
        {
            if (FisrtString == SecondString)
            {
                //If the first line is equal to the second line, then assign a value
                //The user check passed here, you can open the window
                RegistryKey KEY_CREATE = Registry.CurrentUser.CreateSubKey(SubBaseKeyString);
                KEY_CREATE.SetValue("Validate", "1");
                KEY_CREATE.Close();
            }
            else
            {
                //If the first line is not equal to the second line, then we perform the desired action
            }
        }