sak47 发表于 2011-11-4 11:07:50

[已解决]两次OBJ创建窗体关闭时报错,附代码

本帖最后由 sak47 于 2011-11-19 08:41 编辑

在一个窗体中两次调用 OBJ时,关闭窗体会出现错误,代码如下:望高手指点

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <file.au3>

$oIE = ObjCreate("Shell.Explorer.2")
$Obj1 = ObjCreate("QvodInsert.QvodCtrl.1")

$form1 = GUICreate("123",537,396)
$GUIActiveX = GUICtrlCreateObj ($oIE,0,0,396,30)
$oIE.navigate("")
$Obj1_ctrl = GUICtrlCreateObj($Obj1,0,30,537,366)
GUISetState(@SW_SHOW)

While 1
        $nMsg = GUIGetMsg()
        If $nmsg = $GUI_EVENT_CLOSE Then Exit
WEnd

运行无错,退出时报错。什么内存不能读之类的,第一个OBJ调用IE,第二个调用快播


问题已经解决,见4楼

sak47 发表于 2011-11-4 11:19:27

问题补充:

$Obj1_ctrl = GUICtrlCreateObj($Obj1,0,30,537,366)

把这句注释掉就不会报错了,但这句不能注释掉啊

amxi 发表于 2011-11-4 15:40:06

确实...我这边也一样.
拿别人的代码来试也一样

sak47 发表于 2011-11-19 08:39:02

回复 3# amxi

问题已经解决,把退出语句 exit 换成 ProcessClose(@AutoItPID) 就可以了。参考了门里汗的作品。

amxi 发表于 2011-11-19 11:27:52

回复 4# sak47


    {:face (239):} ,谢谢
页: [1]
查看完整版本: [已解决]两次OBJ创建窗体关闭时报错,附代码