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;
}
}
}
}
}
我想通了!问题既不是登录,也不是主窗体,而是实体框架在构造函数上引发异常。
我刚刚关注了这篇博客文章,并添加了:
var type = typeof(System.Data.Entity.SqlServer.SqlProviderServices);
到构造函数。现在,它就像一个魅力!
感谢大家的回复