打印本文 打印本文 关闭窗口 关闭窗口
用VB6.0编写自我升级的程序(三)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2042  更新时间:2009/4/23 15:03:53  文章录入:mintao  责任编辑:mintao

     '''' 记录更新次数

     WritePrivateProfileString "Update", "Num", CStr(i), UpdateIniPath

    

     '''' 检查旧程序的状态

     If MainState Then

        ChangeLabelPos Me, lblCap, "正在启动更新后的主程序 ... "

        Sleep 1000

        Shell NewExeFile, vbNormalNoFocus

     End If

    

     '''' 关闭更新程序

     Command1.Visible = True

     ChangeLabelPos Me, lblCap, "更新完成,请等待 3 秒后将自动关闭更新程序 ..."

     Sleep 3000

     lblCap.Refresh

    

     Unload Me

  End If

End Sub

 

Private Sub Form_Load()

 

  If App.PrevInstance Then End

 

  UpdateIniPath = App.Path & "\Update.ini"

  State = True

End Sub

 

 

完成了三个工程的代码拷贝,在代码的必要之处我都进行了详细注释,这里我就不再介绍代码了,现在进行最后一步,模拟从网站下载升级后的程序。

a.        打开projMain.vbp,编译该工程,并且命名为“主程序.exe”;

b.        打开projNewMain.vbp,编译该工程,并且命名为“projNewMain.exe”;

c.        打开projUpdate.vbp,打开工具栏上的“vb资源编辑器”(若没找到,读者需要点击菜单“外接程序|外接程序管理器”,在打开的对话框中选择“vb6资源编辑器”,在加载行为中选择“加载/卸载”复选框),在资源编辑器中选择“添加自定义资源 …”,在打开的对话框中定位到Update文件夹,选择projNewMain.exe文件,保存该资源文件,最后编译该工程并且命名为“Update.exe”。

d.        将可执行文件“主程序.exe”、“Update.exe”拷贝到同一个文件夹中,运行任一个程序,相信读者会看到效果。

 

以上代码比较简单,仅供读者分析思路用。在实际工程中的代码编写时也根本没必要把projNewMain.exe放在资源文件中,读者只需将它放在服务器的某个位置,然后在projUpdate.vbp中的相应处写下载代码即可。

Ok,文章至此编写完成,希望对各位读者能有所帮助。

 

附:本人已在CSDN上发布了源码,等管理员审核完毕,本人再将链接地址补上。

 

上一页  [1] [2] [3] 

打印本文 打印本文 关闭窗口 关闭窗口