用VB6.0编写自我升级的程序(二)
中华网科技 http://tech.china.com
2005-06-22 11:51:38
|
|
|
二、 projNewMain.vbp工程: 说明:这个是新的主程序,即升级后的主程序,由于我目前没有服务器,故将该程序放在projUpdate.vbp工程的资源文件中。在projUpdate.vbp中模拟网络升级。 用记事本打开frmNewMain.frm文件,copy以下内容到其中: VERSION 5.00 Begin VB.Form frmNewMain Appearance = 0 ‘Flat BackColor = &H80000005& Caption = "Form1" ClientHeight = 1365 ClientLeft = 60 ClientTop = 345 ClientWidth = 4680 LinkTopic = "Form1" ScaleHeight = 1365 ScaleWidth = 4680 StartUpPosition = 3 ‘窗口缺省 Begin VB.CommandButton Command1 Caption = "升级" Height = 525 Left = 1410 TabIndex = 0 Top = 660 Width = 1245 End Begin VB.Label lblCap Caption = "告诉你,我已经升级了,没看出和以前不一样了吗?" Height = 255 Left = 120 TabIndex = 1 Top = 60 Width = 4275 End End Attribute VB_Name = "frmNewMain" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Option Explicit ‘ ------------------------------------------ ‘ 升级程序的例子 ‘ 作者: 谢家峰 ‘ 日期: 2003/12/19 ‘ ‘ 这里是升级后的主程序 ‘ ‘ ------------------------------------------ Private Sub Command1_Click() Command1.Enabled = False ‘ 运行更新程序 Shell App.Path & "update.exe", vbNormalFocus End Sub Private Sub Form_Load() Dim i As Integer If App.PrevInstance Then End UpdateIniPath = App.Path & "Update.ini" ‘ 记录主程序的名字 WritePrivateProfileString "Main", "Name", App.EXEName, UpdateIniPath ‘ 记录运行状态 WritePrivateProfileString "Main", "Active", "-1", UpdateIniPath Me.Caption = App.EXEName End Sub Private Sub Form_Unload(Cancel As Integer) ‘ 记录运行状态 WritePrivateProfileString "Main", "Active", "0", UpdateIniPath End Sub
|