PB程序实现自动更新(转载)

本文介绍了一种使用PB6.5自带的小程序实现客户端自动更新的方法。通过在服务器上设置同步文件,客户端可以定期检查并更新本地应用程序,确保使用的是最新版本。此过程涉及批处理脚本的编写和SYC文件的配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://blog.sina.com.cn/s/blog_4999fa7501000bkl.html

PB程序实现自动更新(转载)

 (2007-08-01 14:53:55)

转载

http://blog.sina.com.cn/s/blog_4999fa7501000bkl.html 

 

PB程序实现自动更新(客户端从服务器更新)

1运行
D:\Sybase\PB6\Sync\sync.exe
创建一个project_yours.SYC文件
操作很简单,你试一试一定行
里面设置源文件位置,目标文件位置
2.在
客户端把这个文件拷过去D:\Sybase\PB6\Sync\syncrt.exe拷到程序目录
用批处理写:SYNCRT.EXE C:\your_pro_dir\project_yours.SYC
在任何地方调用这个批处理就可以比较客户端文件是否最新了


@echo on
cls
:Check
@echo 在更新本煤销软件前,请您退出煤销软件。您确信需要更新煤销软件吗?
@echo 按下"Y"----是
@echo 按下"N"----否
@echo off

choice /c:yn 请选择一个选项...
if errorlevel 2 goto Quit
if errorlevel 1 goto Copy
:Copy
@echo on
@echo 正在更新煤销软件...
@echo off
if not exist d:\煤销软件 mkdir d:\煤销软件
copy \\xkjtserver\煤销管理\煤销软件.exe d:\煤销软件
copy \\xkjtserver\煤销管理\ecoalm.pbd d:\煤销软件
copy \\xkjtserver\煤销管理\ecoalw.pbd d:\煤销软件
copy \\xkjtserver\煤销管理\ecoald.pbd d:\煤销软件
copy \\xkjtserver\煤销管理\userobj.pbd d:\煤销软件
copy \\xkjtserver\煤销管理\update_ecoal.bat d:\煤销软件
:Control
if not exist d:\煤销软件\mscomm32.ocx copy \\xkjtserver\煤销管理\mscomm32.ocx d:\煤销软件
if not exist d:\煤销软件\mscomm32.reg copy \\xkjtserver\煤销管理\mscomm32.reg d:\煤销软件
regedit /s d:\煤销软件\mscomm32.reg
@echo on
@echo 更新完毕,请重新进入煤销系统。
@echo off
:Quit
@echo.
@echo off
exit

 

pb6.5自带一个小程序,请在\Sybase\PB6\Sync下找。  
  举例:  
  建一个文件"test.syc"  
  [log]  
  file=  
  replace=0  
  verbose=2  
  [variables]  
  src_dir=\\my_server\program  
  dest_dir=c:\program  
  [sync]  
  syncop0=/src   %src_dir%\*.exe   /dest   %dest_dir%\*.exe   /d   /s  
  syncop1=/src   %src_dir%\*.pbd   /dest   %dest_dir%\*.pbd   /d   /s  
  [start]  
  show=1  
  cancel=1  
  [end]  
  exec=c:\program\aaa.exe  
  parm=  
   
  用syncrt.exe打开该文件。

作者语:我从新浪转载过来,不知道能不能用,只是做一个技术储备。2020-07-21。

 

C/S程序自动升级是一个很重要的功能,原理其实很简单,一般包含两个程序一个是主程序,也就是除了升级功能以外的程序 主要包括以下几点:   1 比较版本  2下载文件  3更新文件 4启动主程序。但其中的需要注意的细节很多。      一般服务端会有一个配置文件包含最新更新的文件信息的配置文件,当然这些更新信息也可以存到数据库,或者其他地方。客户端(也就是需要更新的那部分程序)也有一个配置文件包含客户端版本信息,这些信息可以存到专门的一个配置文件中,或者是config文件中,没有一定的规定,可以根据实际设计。    在客户端程序启动时,先启动更新程序通过比较本地版本和服务端最新的版本信息判断是否有新版本,如果有可以直接下载,下载完成替换成功后并更新客户端版本信息,启动主程序。             缺点:如果更新速度由于更新的文件很大或者网速很慢,用户不得不等待很长时间,直到下载完成或者下载失败。             优点:处理完成后,启动的直接就是更新后的程序。不会出现由于主程序在运行导致替换文件时提示文件在使用,不能替换之类的错误。    另一种方法是, 在客户端段程序启动时,启动更新程序,但更新程序不做版本判断,到客户端更新目录下检查有没有下载的新版本,如果有就更新主程序并更新客户端版本信息,然后启动主程序,如果没有就直接启动主程序。由主程序判断是否有新版本,并在后台下载把文件放到客户端更新目录中,下载完成后,提示用户退出主程序,重新启动,在启动时由更新程序并更新客户端和客户端版本信息。                 缺点:由于下载是在主程序的后台运行,可能会影响主程序的处理速度。             优点:避免了由于下载导致用户长时间的等待。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值