热心网友klc在http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=57898&authorid=0&page=0&star=3中提供了一段自动关闭金字塔的代码.
Set Wrap = CreateObject("DynamicWrapper")
Wrap.Register "user32.dll","FindWindowA","i=ss","f=s", "r=l"
Wrap.Register "user32.dll","FindWindowExA","i=llss","f=s", "r=l"
Wrap.Register "user32.dll","SendMessageA","i=lull","f=s", "r=l"
WM_LBUTTONDOWN=513
WM_LBUTTONUP=514
h = Wrap.FindWindowA("#32770","金字塔")
if h<>0 then
h2 = Wrap.FindWindowExA(h,0,"Button","是(&Y)")
if h2<>0 then
Wrap.SendMessageA h2,WM_LBUTTONDOWN,0,0
Wrap.SendMessageA h2,WM_LBUTTONUP,0,0
end if
else
application.PostMessage(57665)
end if
有几个问题想请教一下:
1.运行上面的代码,会弹出询问是否关闭金字塔的是/否消息窗口,还需要手动点击.如何解决?
2.似乎application.PostMessage(57665)这一句就是关闭软件的,那么上面那么多代码都是做什么用的?看不懂
3.关软件之前,需要先把交易停止吧(就是那个启动交易/停止交易的弹窗).上面的代码考虑了吗?
1,选项中有这个关闭是否弹出提示的功能。
2,这个实现的功能是一样
3,关闭前需要停止自动交易的,不然他还会弹出是否退出的窗口。
你可以试试 Application 对象的
QuitApplication(Type)
关闭并退出应用程序和计算机
Type 为0时表示仅关闭退出应用程序 为1时关闭应用程序后关闭计算机
提供了更直接的方法来帮你实现