我在C#中有一个winform应用程序,必须在第一次运行时创建一个SQLLocalDB实例。 我看到这个过程花了一些时间在一些旧的PC上,一些用户认为该应用程序崩溃了。 我创建了一个splashscreen表单,让用户知道应用程序正在创建实例,但我不知道我怎么不能检查进程何时结束并关闭启动画面。
我有一个static private void ExecCmdInstance()
{
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = "/c sqllocaldb create MSSQLLocalDB -s";
process.StartInfo = startInfo;
process.Start();
}
,其中包含以下代码来创建实例:
{{1}}
有人能指出我正确的方向吗? 提前谢谢。
答案 0 :(得分:0)
您可以使用:
process.WaitForExit();
但要注意它会阻止你的gui线程。你可以在另一个线程上启动这个过程,这样你的gui就不会被阻止。