求助:在运行时winform自动安装MSDE,安装到后半段时无反应,但控制台方式却可以!
如题。为了在系统安装运行后,我做了个配置工具,自动安装MSDE,首先做了一个控制台项目,运行正常后,觉得用户界面差了些,就做个winform的项目,结果安装运行了n秒后,安装程序就不再进行了,请各路大仙指教,附代码:
控制台代码:
Function RunInstaller() As Boolean
Try
Console.WriteLine("正在安装数据库软件……")
Dim i As Short
Try
i = Shell("""" + Environment.CurrentDirectory + "\\msde\\setup.exe""", AppWinStyle.NormalFocus, True, 1000000)
Catch ex As Exception
Console.WriteLine(" 错误信息:" + ex.Message)
i = -1
End Try
If i > 0 Then
Console.WriteLine("数据库软件成功安装……")
Return True
Else
Console.WriteLine("数据库软件安装过程中出错……")
Return False
End If
Catch ex As Exception
Return False
Console.WriteLine("运行安装时出错!")
End Try
End Function
winform代码:
Function RunInstaller() As Boolean
' MessageBox.Show("正在安装数据库软件[" + """" + Environment.CurrentDirectory + "\\msde\\setup.exe""" + "]……")
Dim i As Short
Try
'最初用shell实现,搞不定后,查资料改为process,结果一样!
' i = Shell("""" + Environment.CurrentDirectory + "\\msde\\setup.exe""", AppWinStyle.NormalFocus, True)
Dim psInfo As New System.Diagnostics.ProcessStartInfo(Environment.CurrentDirectory + "\msde\setup.exe")
psInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
Dim myProcess As Process = System.Diagnostics.Process.Start(psInfo)
i = 1
Catch ex As Exception
MessageBox.Show("运行安装时出错:" + ex.Message, "操作结果", MessageBoxButtons.OK, MessageBoxIcon.Error)
i = -1
End Try
MessageBox.Show("安装数据库软件结束……")
If i > 0 Then
Me.lb_DBMS.Text = "数据库软件成功安装……"
Return True
Else
Me.lb_DBMS.Text = "数据库软件安装过程中出错……"
Return False
End If
End Function