从没看过别人如何写升级包,我想是不是能有这类的自动化工具?这个程序应该比较通用。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
If CheckBox1.Checked = True Then
Dim dirinfo As DirectoryInfo = New DirectoryInfo(AppFolder.Text)
If dirinfo.Exists = False Then
MessageBox.Show("程序安装文件夹不存在,请重新填写.", "失败", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
GoTo myFlagError
End If
Dim AppUpdate As New Process
AppUpdate.StartInfo.FileName = "xcopy.exe"
AppUpdate.StartInfo.Arguments = String.Format("{0} {1} /s /y", "App", AppFolder.Text)
Try
AppUpdate.Start()
AppUpdate.WaitForExit()
AppUpdate.Close()
MessageBox.Show("程序已经成功升级!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
Catch ex As Exception
MessageBox.Show("升级程序失败!请联系北京****公司.", "失败", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
End Try
End If
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
If CheckBox2.Checked = True Then
Dim connString As String = String.Format("workstation id=.;packet size=4096;user id={0};pwd={1};data source=.;persist security info=False;initial catalog={2}", DBAdmin.Text, DBPasswd.Text, DBName.Text)
Try
Dim TestInteger As Integer = SqlHelper.ExecuteScalar(connString, CommandType.Text, "select count(*) from sysusers")
Catch ex As Exception
MessageBox.Show("数据库连接失败,请检查所填写数据库信息是否正确.", "失败", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
GoTo myFlagError
End Try
Dim Succ As Boolean = True
Dim SQLUpdate As New Process
Dim files As FileInfo
Dim dir As DirectoryInfo = New DirectoryInfo("Sql/")
For Each files In dir.GetFiles
SQLUpdate.StartInfo.FileName = "osql.exe"
SQLUpdate.StartInfo.Arguments = String.Format("-U {0} -P {1} -d {2} -i {3}", DBAdmin.Text, DBPasswd.Text, DBName.Text, "Sql/" & files.Name)
Try
SQLUpdate.Start()
SQLUpdate.WaitForExit()
SQLUpdate.Close()
Catch ex As Exception
MessageBox.Show("升级数据库脚本 " & files.Name & " 失败!请联系北京****公司.", "失败", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
Succ = False
End Try
Next
If Succ = True Then
MessageBox.Show("数据库脚本已经成功升级!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly)
End If
End If
myFlagError: ' 连接数据库失败出错!