我想在Unload事件提示用户是否要取消升级
如果用户选择否程序继续执行 Private Sub Form_Unload(Cancel As Integer)
If isok = 0 Then
If MsgBox("是否取消本次版本的升级?", vbYesNo + vbQuestion, "飞腾浏览器(FlyIe)") = vbYes Then
Call cIni.WriteKey("General", "ver", ver)
'直接运行程序
Shell AppPath & "FlyIe.exe", vbNormalFocu
Exit Sub
End
Else
Cancel = False
End If
Else
'直接运行程序
Shell AppPath & "FlyIe.exe", vbNormalFocu
Exit Sub
End
End IfEnd Sub
如果用户选择否程序继续执行 Private Sub Form_Unload(Cancel As Integer)
If isok = 0 Then
If MsgBox("是否取消本次版本的升级?", vbYesNo + vbQuestion, "飞腾浏览器(FlyIe)") = vbYes Then
Call cIni.WriteKey("General", "ver", ver)
'直接运行程序
Shell AppPath & "FlyIe.exe", vbNormalFocu
Exit Sub
End
Else
Cancel = False
End If
Else
'直接运行程序
Shell AppPath & "FlyIe.exe", vbNormalFocu
Exit Sub
End
End IfEnd Sub
用户选择否的时候让程序继续执行?
Dim isok As Boolean
Private Sub Form_Unload(Cancel As Integer)
If isok = 0 Then
If MsgBox("是否取消本次版本的升级?", vbYesNo + vbQuestion, "飞腾浏览器(FlyIe)") = vbYes Then
Call cIni.WriteKey("General", "ver", ver)
'直接运行程序
Shell AppPath & "FlyIe.exe", vbNormalFocu
Exit Sub
End
Else
Cancel = -1
End If
Else
Shell AppPath & "FlyIe.exe", vbNormalFocu
Exit Sub
End
End If
End Sub
Dim isok As Boolean
Private Sub Form_Unload(Cancel As Integer)
If isok = 0 Then
If MsgBox("是否取消本次版本的升级?", vbYesNo + vbQuestion, "飞腾浏览器(FlyIe)") = vbYes Then
Call cIni.WriteKey("General", "ver", ver)
'直接运行程序
Shell App.Path & "FlyIe.exe", vbNormalFocu
End
Else
Print "本次版本的升级"
'写执行本次版本的升级
Cancel = -1
End If
End If
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Cancel = 1
rtn = MsgBox("确定要退出程序吗?", vbYesNo, "菜鸟多媒体")
If rtn = 6 Then End
End Sub
Cancel = 1
If MsgBox("ÊÇ·ñÈ¡Ïû±¾´Î°æ±¾µÄÉý¼¶?", vbYesNo + vbQuestion, "·ÉÌÚä¯ÀÀÆ÷(FlyIe)") = vbYes Then End
End Sub
拦截Form_QueryUnload事件是正解,unload事件触发时很多对象已经被回收了
Private isok As BooleanPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
'ver,AppPath都要定义
'还有你把vbNormalFocus写成了vbNormalFocu,最后掉了一个s
'还有你这个标志isok有什么意义我不太明白?
On Error Resume Next
Cancel = 1
If isok = 0 Then
If MsgBox("是否取消本次版本的升级?", vbYesNo + vbQuestion, "飞腾浏览器(FlyIe)") = vbYes Then
Call cIni.WriteKey("General", "ver", ver)
'直接运行程序
Shell AppPath & "FlyIe.exe", vbNormalFocus
'Exit Sub
End
Else
Cancel = False
End If
Else
'直接运行程序
Shell AppPath & "FlyIe.exe", vbNormalFocus
'Exit Sub
End
End If
End Sub