C#WinForm ClickOnce应用程序没有';安装后无法工作

本文关键字:安装 工作 应用程序 ClickOnce C#WinForm | 更新日期: 2023-09-27 18:19:26

我构建的ClickOnce应用程序成功安装并显示应用程序的登录屏幕。然而,当我提交有效的登录信息时,它不会进入主表单或任何地方。可能是这个代码禁止它通过吗?目标框架是.Net 4.5,实体框架6是数据库层。

[DllImport("user32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
static extern bool SetForegroundWindow(IntPtr hWnd);
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
    bool mutexCreated = true;
    using (Mutex mutex = new Mutex(true, Application.ProductName, out mutexCreated))
    {
        if (mutexCreated)
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            frmLogin loging = new frmLogin();
            Application.Run(loging);
            if (!loging.UserID.Equals(""))
            {
                Application.Run(new frmMainScreen() { UserID = loging.UserID});
            }
        }
        else
        {
            Process current = Process.GetCurrentProcess();
            foreach (Process process in Process.GetProcessesByName(current.ProcessName))
            {
                if (process.Id != current.Id)
                {
                    MessageBox.Show("Another instance of " + Application.ProductName + " is already running.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;
                }
            }
        }
    }
}

C#WinForm ClickOnce应用程序没有';安装后无法工作

我想通了!问题既不是登录,也不是主窗体,而是实体框架在构造函数上引发异常。

我刚刚关注了这篇博客文章,并添加了:

var type = typeof(System.Data.Entity.SqlServer.SqlProviderServices); 

到构造函数。现在,它就像一个魅力!

感谢大家的回复