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

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

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

 

曾经有位网友和我讨论怎样编写一个通过服务器对客户机上的程序进行自我升级的问题,由于我的项目也涉及到自我升级,当时我把我的解决方案提了出来,那就是做一个类似于瑞星的升级程序。在这里我也发现了很多的网友对这个问题很困惑,故我愿意把我的设计方案写出来与大家共享,大家也可以通过这个思路用其他语言进行改写。

 

以下是我的具体思路:

写两个程序,一个是主程序;一个是升级程序(升级程序放在服务器上);

说明:所有升级任务都由升级程序完成。

 

1.启动升级程序,升级程序连接到网站,下载新的主程序(当然还包括支持的库文件等)到临时文件夹;

2.升级程序检测旧的主程序是否活动,若活动则关闭旧的主程序(同时记下主程序的状态);

3.删除旧的主程序,拷贝临时文件夹中的文件到相应的位置,同时注册相应的文件;

4.检查主程序的状态,若状态为活动的,则启动新的主程序;

5.关闭升级程序。

6.祝贺你,升级完成。

由于网友提出了关于升级这个升级程序的问题,以下是对其思路进行的一点补充,但原文仍然是升级主程序的,具体代码需读者自己添加:

7.主程序升级完毕;
8.升级程序继续检查所下载的临时文件中是否含有NewUpdate.exe(新的升级程序)和rename.exe(是一个可以更改文件名的程序);
9.若存在以上两个文件,表示要更新Update.exe文件;启动rename.exe程序,同时update.exe关掉自己;
10.rename.exe程序检测update.exe是否已被关掉,若已关掉,删除该update.exe。移动临时文件夹中的NewUpdate.exe文件到主程序的目录下,同时更名为update.exe;
11.rename.exe关掉自己。
12.OK,至此升级程序也被升级了。

 

 

下面进行具体的程序编写,需建立三个工程,然后把它们编辑成一个组,三个工程需共用一个模块。

 

建立工程步骤:

1.        建立工程proMain:打开vb,“新建工程”,选择“标准EXE”, 再给工程中添加模块,并且命名为modCommon,修改窗体名为frmMain,同时修改工程名为projMain,然后保存到某个文件夹(譬如在桌面建立个文件夹Update),窗体、模块和工程分别保存为frmMain.frm、modCommon.bas、projMain.vbp;

 

2.        建立工程projNewMain:点击菜单“文件|新建工程” ,选择“标准EXE”,点击菜单“工程|添加模块”,在弹出的对话框中选择“现存”标签,定位到Update文件夹,选中modCommon.bas模块。修改窗体名为frmNewMain,同时修改工程名为projNewMain,然后保存到Update文件夹,窗体和工程分别保存为frmNewMain.frm、projNewMain.vbp;

 

 

3.        建立工程projUpdate:点击菜单“文件|新建工程” ,选择“标准EXE”,点击菜单“工程|添加模块”,在弹出的对话框中选择“现存”标签,定位到Update文件夹,选中modCommon.bas模块。修改窗体名为frmUpdate,同时修改工程名为projUpdate,然后保存到Update文件夹,窗体和工程分别保存为frmUpdate.frm、projUpdate.vbp;

 

4.        建立组:在工程projUpdate中,点击菜单“文件|添加工程…”在弹出的对话框中选择“现存”标签,定位到Update文件夹,选择projMain.vbp;重复该动作,选择projNewMain.vbp;保存该组即可;

 

5.        关闭工程,定位到Update文件夹,然后执行下面的步骤。

 

 

各个工程文件中的文件源码:

一、 projMain.vbp工程:

说明:这个是旧的主程序,从来没有进行过升级前的程序。

 

用记事本打开frmMain.frm文件,copy以下内容到其中:

 

VERSION 5.00

Begin VB.Form frmMain

   Caption         =   "请点击升级进行程序"

   ClientHeight    =   1140

   ClientLeft      =   60

   ClientTop       =   345

   ClientWidth     =   4500

   LinkTopic       =   "Form1"

   ScaleHeight     =   1140

   ScaleWidth      =   4500

   StartUpPosition =   3  ''''窗口缺省

   Begin VB.CommandButton Command1

      Caption         =   "升级"

      Height          =   525

      Left            =   1380

      TabIndex        =   0

      Top             =   570

      Width           =   1245

   End

End

Attribute VB_Name = "frmMain"

Attribute VB_GlobalNameSpace = False

Attribute VB_Creatable = False

Attribute VB_PredeclaredId = True

Attribute VB_Exposed = False

 

 

 

Option Explicit

 

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

'''' 升级程序的例子

'''' 作者:   谢家峰

[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……
    咸宁网络警察报警平台