转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> VB.NET程序 >> 正文
用VB6.0编写自我升级的程序(三)         ★★★★

用VB6.0编写自我升级的程序(三)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1493 更新时间:2009/4/23 15:03:53

'''' ------------------------------------------

 

Dim State As Boolean

 

Private Sub Command1_Click()

  Unload Me

End Sub

 

Private Sub Form_Activate()

 

  Dim i As Integer

  Dim j As String

 

  Dim OldExeFile As String

  Dim NewExeFile As String

 

  Dim tmpFile As String

  Dim MainState As Boolean

 

 

  DoEvents

   

  If State Then

     '''' 获取旧主程序名称

     OldExeFile = CStr(ReadIniFile(UpdateIniPath, "Main", "Name", "主程序"))

     NewExeFile = OldExeFile

     OldExeFile = App.Path & "\" & OldExeFile & ".exe"

     tmpFile = App.Path & "\tmp.tmp"

    

     '''' 改写升级次数

     i = CInt(ReadIniFile(UpdateIniPath, "Update", "Num", "0"))

     i = i + 1

     ChangeLabelPos Me, lblCap, "这是您第" & i & "次升级!"

     Sleep 1500

    

     '''' 摸拟从网站下载新的更新程序。

     ChangeLabelPos Me, lblCap, "正在 摸拟从网站下载新的升级程序 ..."

     Sleep 1000

     On Error Resume Next

     Kill tmpFile

     '''' 此处可以修改为将临时文件放在临时文件夹内

     SaveFileFromRes 101, "CUSTOM", tmpFile

     Sleep 1000

     On Error GoTo 0

    

     '''' 检查主程序是否开启,若开启则关闭旧程序

     MainState = CBool(CInt(ReadIniFile(UpdateIniPath, "Main", "Active", "0")))

     If MainState Then

       '''' 关闭旧程序

       ChangeLabelPos Me, lblCap, "正在关闭旧程序 ... "

       Sleep 300

      

       '''' 这里强行关闭旧程序

       '''' 你也可以发送消息,让旧程序自己关闭

       Do While -1

          DoEvents

          If CloseValidForm(NewExeFile) Then

             Exit Do

          End If

       Loop

       Sleep 200

     End If

    

     '''' 删除旧程序

     On Error Resume Next

     ChangeLabelPos Me, lblCap, "正在删除旧程序 ... "

     Sleep 1000

     Kill OldExeFile

     Sleep 1000

    

    

     '''' 生成新主程序名称

''''     NewExeFile = CStr(ReadIniFile(UpdateIniPath, "Main", "Name", "主程序"))

     j = Right(NewExeFile, 1)

     If IsNumeric(j) Then

        j = i

        NewExeFile = Left(NewExeFile, Len(NewExeFile) - 1)

     Else

        j = 1

     End If

     '''' 记录主程序的名字

     NewExeFile = NewExeFile & j

     WritePrivateProfileString "Main", "Name", NewExeFile, UpdateIniPath

     NewExeFile = App.Path & "\" & NewExeFile & ".exe"

    

    

     '''' 拷贝新程序

     ChangeLabelPos Me, lblCap, "正在更新程序 ... "

     Sleep 1000

     FileCopy tmpFile, NewExeFile

     Sleep 1000

     '''' 删除临时程序

     Kill tmpFile

    

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


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台