VB检测程序更新问题,怎么获取版本号

VB检测程序更新问题,怎么获取版本号,第1张

可以将文件内容改成123这样的版本号,如果要分开获取,或者获取版本差,(AA 与 BB) 可以用Split函数,具体可以在百度搜索Split,然后AA-目前版本第1部分BB-目前版本第2部分,或者直接比较

Private Sub Command1_Click()

 Command1Enabled = False

 ' 运行更新程序

 Shell AppPath & "\updateexe", vbNormalFocus

End Sub

Private Sub Form_Load()

 If AppPrevInstance Then End

 UpdateIniPath = AppPath & "\Updateini"

 ' 记录主程序的名字

 WritePrivateProfileString "Main", "Name", AppEXEName, UpdateIniPath

 ' 记录运行状态

 WritePrivateProfileString "Main", "Active", "-1", UpdateIniPath

 ' 记录更新次数

 WritePrivateProfileString "Update", "Num", "0", UpdateIniPath

 MeCaption = AppEXEName

End Sub

Private Sub Form_Unload(Cancel As Integer)

 ' 记录运行状态

 WritePrivateProfileString "Main", "Active", "0", UpdateIniPath

End Sub

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

Attribute VB_Name = "modCommon"

Option Explicit

自动升级?提供个思路供你参考。

独立编写升级模块,编译为单独文件,并且在主程序中通过事件或方法以调用外部程序的方式调用。

可另创二进制文件记录,本机软件版本号及版本日期。升级模块内有与网络文件日期或版本号比较的代码。比较结果发现已经更新提示后由用户选择是否更新,更新时直接覆盖。当然,更人性化的可以让用户选择新功能安装。

文件位置?一般可以通过注册表确认。开始学时,可以直接记录到一个文件里,更新时取出来就是了。

刚好在看这文章! 我转发给你吧!里面也有源码的下载地址=========================================================================== 很多朋友问这个关于网络更新的问题。其实很简单,一点都不难。我这里给大家做了个演示文件。由于是演示,所我把很多常量都做成了变量,本应该放Private Sub Form_Load()End Sub里的过程,放在了 按钮里!说明下!原理:1在服务器上用一个txt文件存放版本信息,检查更新的时候先把那个txt文件下载下来,打开,对比你 提前预设本程序的版本信息。我这里预设了两个,以个是100另个是101按钮1 对比100和服务器上的101当然不一致了,这就问你是不是更新。按钮2对比的是101 和服务器一致就不更新了。2更新是时候会自动更名,我我 服务器是免费的5944垃圾,他不 允许下载exe所以我改了下扩展名为txt 这样就允许下载了,到本地我再改回来,气死它!3要先运行新程序,再关闭老程序。代码如下:Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Private Sub Command1_Click()

R = URLDownloadToFile(0, Text1Text, "Versiontxt", 0, 0)

If R = 0 Then

'下载成功,则打开文件对比版本:把最新版本信息放第一行

Set fso1 = CreateObject("scriptingfilesystemobject")

Set file0 = fso1OpenTextFile("Versiontxt", 1, 1)

d = file0Readline

d = Trim(d)

If d = Trim(Text3Text) Then

MsgBox "你的程序已经是最新版本,不需要更新!当前版本为:" & Text3Text, 48, "恭喜你!"

Else

ifdl = MsgBox("你的程序不只最新版本,是否更新到最新版本?服务器版本为:" & d, vbYesNo, "出新版本了,你Y的 更新不?")

If ifdl = 6 Then

r1 = URLDownloadToFile(0, Text2Text, "newexe", 0, 0)

If r1 = 0 Then

MsgBox "更新完成,点击确定运行新版本"

Shell "newexe", vbNormalFocus

End

End If

Else

MsgBox "下载失败,请检测网络连接是否正常,或者,服务器正常。", 16, "错误!灵魂口袋6921833"

End If

End If

file0Close

Else

MsgBox "错误" & R & vbCrLf & "检测更新失败,请确定你的网络连接正常!", 16, "抱歉!有问题联系6921833"

End If

End SubPrivate Sub Command2_Click()

r1 = URLDownloadToFile(0, Text2Text, "newexe", 0, 0)

If r1 = 0 Then

MsgBox "更新完成,点击确定运行新版本"

Shell "newexe", vbNormalFocus

End

Else

MsgBox "下载失败,请检测网络连接是否正常,或者,服务器正常。", 16, "错误!灵魂口袋6921833"

End If

End SubPrivate Sub Command3_Click()

End

End SubPrivate Sub Command4_Click()

R = URLDownloadToFile(0, Text1Text, "Versiontxt", 0, 0)

If R = 0 Then

'下载成功,则打开文件对比版本:把最新版本信息放第一行

Set fso1 = CreateObject("scriptingfilesystemobject")

Set file0 = fso1OpenTextFile("Versiontxt", 1, 1)

d = file0Readline

d = Trim(d)

If d = Trim(Text4Text) Then

MsgBox "你的程序已经是最新版本,不需要更新!", 48, "恭喜你!"

Else

ifdl = MsgBox("你的程序不只最新版本,是否更新到最新版本?服务器版本为:" & d, vbYesNo, "出新版本了,你Y的 更新不?")

If ifdl = 6 Then

r1 = URLDownloadToFile(0, Text2Text, "newexe", 0, 0)

If r1 = 0 Then

MsgBox "更新完成,点击确定运行新版本"

Shell "newexe", vbNormalFocus

End

End If

Else

MsgBox "下载失败,请检测网络连接是否正常,或者,服务器正常。", 16, "错误!灵魂口袋6921833"

End If

End If

file0Close

Else

MsgBox "错误" & R & vbCrLf & "检测更新失败,请确定你的网络连接正常!", 16, "抱歉!有问题联系6921833"

End If

End Sub

我原来写的一个自动升级程序,是在服务器站用了一个ini文件,记录exe的版本号,然后使用URLDownloadToFile下载到本地,然后与本地文件进行对比,如果版本号不一样,再使用URLDownloadToFile下载exe文件到本地

Public Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Public Declare Function DeleteUrlCacheEntry Lib "wininet" Alias "DeleteUrlCacheEntryA" (ByVal lpszUrlName As String) As Long

'//

'/函数功能:从服务器下载文件

'/参数说明:参数一 服务器文件路径,本地文件路径

'/编 写 人:于莹莹

'/编写日期:2007-8-28

'//

Public Function DownloadFile(url As String, LocalFilename As String) As Boolean

Dim lngRetVal As Long

lngRetVal = URLDownloadToFile(0, url, LocalFilename, 0, 0)

If lngRetVal = 0 Then

DownloadFile = True

DeleteUrlCacheEntry url

End If

End Function

使用方法:

DownloadFile ">

以上就是关于VB检测程序更新问题,怎么获取版本号全部的内容,包括:VB检测程序更新问题,怎么获取版本号、关于用VB6.0编写客户端自动升级程序、vb.net 自动更新指定位置的.exe 文件 例如,程序运行时,会自动更新 \\192.16等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9679447.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存