如果用户被授权,这个表单(登录)应该关闭并且应用程序主表单应该打开。
建议 1、2 和 3 强烈声明不要这样做。将您自己的身份验证层添加到 Windows 已经提供的身份验证层绝不是一个错误。您将永远不会像 Windows 登录那样安全且经过良好测试。并且存在严重的安全风险,用户会重复使用他们的登录密码。如果您需要任何额外信息来登录 Environment.UserName 和用户所属的组,那么您可以从具有 System.DirectoryServices 命名空间的域控制器中获取这些信息。
但你会把这种谨慎抛诸脑后。样板解决方案是修改 Program.cs 中的 Main() 方法,并使用 ShowDialog() 显示登录表单。登录良好时应返回 DialogResult.OK ,否则返回 DialogResult.Cancel 。你像这样使用它:
[STAThread]
static void Main() {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
using (var login = new LoginForm()) {
if (login.ShowDialog() != DialogResult.OK) return;
}
Application.Run(new Form1());
}