下面的代码,使用时提示不能用public声明。我是新手,不会修改,麻烦高人完善一下这个代码,谢谢
'需要:Microsoft Internet Transfer Control 6.0控件
'原理:在网站上建立一个updata.txt文件,里面保存升级信息
'updata.txt文件格式:
'文件内容:
'共三行,第一行:版本号;第二行:更新文件名;第三行: 文件长度Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Public Const SW_SHOWNORMAL = 1
Public Const SW_MINIMIZE = 6
Public Sub UpData() '在线升级
On Error GoTo 100
Dim MyData() As Byte, VerInfo() As Byte, Ti As Long, Tj As LongIf Inet1.StillExecuting = True Then Exit Sub
VerInfo() = Inet1.OpenURL("http://fontz.ajiang.net/updata.txt", icString)
Ti = InStr(1, VerInfo, vbCrLf) + 2
Tj = InStr(Ti, VerInfo, vbCrLf)'检测版本号
If Val(Left$(VerInfo, Ti - 3)) <= Val(App.Major & "." & App.Minor & App.Revision) Then Exit Sub
If MsgBox("SWpsF 发布了新的版本:" + Left$(VerInfo, Ti - 3) + ",文件大小:" + Mid$(VerInfo, Tj + 2) + ",是否进行在线升级 ?", vbYesNo + vbQuestion, "在线升级") = vbNo Then Exit Sub
IsUp = True'开始下载更新文件
MyData() = Inet1.OpenURL("http://fontz.ajiang.net/" + Mid$(VerInfo, Ti, Tj - Ti), icByteArray)
Open App.Path + "\" + Mid$(VerInfo, Ti, Tj - Ti) For Binary Access Write As #1
Put #1, , MyData()
Close #1
IsUp = False
'执行更新文件
ShellExecute 0, vbNullString, App.Path + "\" + Mid$(VerInfo, Ti, Tj - Ti), vbNullString, App.Path, SW_SHOWNORMAL
End
End Sub