Nav apraksta
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

SYS-UPDATE.vb 3.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. Imports System.IO
  2. Imports System.Net
  3. Imports System.Threading.Tasks
  4. Public Class SYS_UPDATE
  5. ReadOnly ds2 As New DataSet
  6. Private Sub Set_清單1()
  7. FDT_dgv.DataSource = Nothing : ds2.Clear()
  8. FDT_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  9. FDT_dgv.ColumnHeadersHeight = 25
  10. FDT_dgv.AllowUserToAddRows = False
  11. SQL_FTP資料夾路徑分配()
  12. da.Fill(ds2) : FDT_dgv.DataSource = ds2.Tables(0) : conn.Close()
  13. End Sub
  14. Private Sub SYS_UPDATE_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  15. '-----------------------寫入連線字串-----------------------------------------------------------------------------------------------------------------------------------------------
  16. 資料數 = 17
  17. MyModule1.進度條() : 登入人IP = "180.177.181.162,5264"
  18. MyModule1.進度條() : SQL_連線字串_ERP()
  19. MyModule1.進度條() : 伺服器區域_cb.Text = "180.177.181.162,5264"
  20. MyModule1.進度條() : g_conn_type = 伺服器區域_cb.Text & "伺服器"
  21. '-----------------------系統版本號寫入-----------------------------------------------------------------------------------------------------------------------------------------------
  22. MyModule1.進度條() : SQL_版本號()
  23. MyModule1.進度條() : If dr.Read() Then : 版本號 = dr("系統認證版本號") : End If : conn.Close()
  24. '-----------------------FTP資料夾登入位置宣告--------------------------------------------------------------------------------------------------------------------------------------
  25. MyModule1.進度條() : SQL_FTP伺服器登入位置()
  26. MyModule1.進度條() : If dr.Read() Then : Target = dr("FTP地址") : FTP帳號 = dr("FTP帳號") : FTP密碼 = dr("FTP密碼") : End If : conn.Close()
  27. MyModule1.進度條() : Set_清單1()
  28. MyModule1.進度條() : Dim HH As String = ""
  29. For i As Integer = 0 To FDT_dgv.Rows.Count - 1
  30. If i < 10 Then : HH = "0" & i : ElseIf i >= 10 Then : HH = i : End If
  31. If FDT_dgv("指定", i).Value.ToString = "AA" & HH Then : AA(i) = FDT_dgv("資料夾名稱", i).Value.ToString : End If
  32. Next
  33. MyModule1.進度條() : Target1 = Target & AA(0) & "/"
  34. End Sub
  35. Private Async Sub SYS_UPDATE_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  36. MyModule1.進度條() : Delay(30000)
  37. MyModule1.進度條() : Dim Str As String = Application.StartupPath
  38. MyModule1.進度條() : If File.Exists(Str + "\BIFENG-ERP-SYS.exe") Then : File.Delete(Str + "\BIFENG-ERP-SYS.exe") : End If
  39. 'MyModule1.進度條() : My.Computer.Network.DownloadFile(Target & AA(1) & "/" & "BIFENG-ERP-SYS.exe", Str + "\BIFENG-ERP-SYS.exe")
  40. Dim downloadUrl As String = Target & AA(1) & "/" & "BIFENG-ERP-SYS.exe"
  41. Dim savePath As String = Str + "\BIFENG-ERP-SYS.exe"
  42. ' 開始異步下載
  43. Await DownloadFileAsync(downloadUrl, savePath)
  44. MyModule1.進度條() : Shell(Str + "\BIFENG-ERP-SYS.exe", vbNormalFocus)
  45. Me.Close()
  46. End Sub
  47. Private WithEvents downloader As New WebClient()
  48. Private Async Function DownloadFileAsync(downloadUrl As String, savePath As String) As Task
  49. Try
  50. ' 使用異步方式下載檔案
  51. Await downloader.DownloadFileTaskAsync(New Uri(downloadUrl), savePath)
  52. ' 下載完成後的處理
  53. MessageBox.Show("下載完成!")
  54. Catch ex As Exception
  55. MessageBox.Show($"下載失敗: {ex.Message}")
  56. End Try
  57. End Function
  58. Public Sub Delay(ByRef Interval As Double) 'Interval单位为毫秒
  59. Dim time As DateTime = DateTime.Now
  60. Dim Span As Double = Interval * 1234
  61. While ((DateTime.Now.Ticks - time.Ticks) < Span)
  62. Application.DoEvents()
  63. End While
  64. End Sub
  65. End Class