检查进程结束以关闭splashscreen

时间:2016-12-16 09:37:00

标签: c# sql winforms class

我在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}}

有人能指出我正确的方向吗? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用:

process.WaitForExit();

但要注意它会阻止你的gui线程。你可以在另一个线程上启动这个过程,这样你的gui就不会被阻止。