我想做一个Activex的组件,在web上调用。功能是,执行后,直接调出本地的QQ然后能够向QQ对话框SendMessage,登陆进去。可是目前碰到了很大的问题,说给大家听听,看看有没有什么好的方法1,用Spy++我找到了QQ对话框的ClassName,也能够得到每个子对话框的句柄,我单布调试的时候,很顺利的能够调出QQ,并且也能够将用户名和密码通过发送Edit,setText方法打过去,可是如果直接执行,就只能调出QQ但是不能向里面发送消息,就不可以,我想可能是通过web调用的时候,不同步,就是说找不到QQ对话框。可是问题是我用一个HWND hwnd=NULL;while(hwnd==null){hwnd=FindWindow(QQClassName,NULL);}这样的话,如果找不到qq对话框的话,按理,他应该是能够继续循环并且之到找为止阿。可是实际上,QQ启动后,网页就死在哪里了,难道是失去了对话框句柄?那为什么单步调的时候就没问题呢?你对这方面很熟悉,能否帮我看看呢?功能就是找到一个已经运行起来的程序,并且能够向它发送消息。QQ是自己封装的控件,不是Win32标准控件
我想做一个Activex的组件,在web上调用。功能是,执行后,直接调出本地的QQ然后能够向QQ对话框SendMessage,登陆进去。可是目前碰到了很大的问题,说给大家听听,看看有没有什么好的方法
1,用Spy++我找到了QQ对话框的ClassName,也能够得到每个子对话框的句柄,我单布调试的时候,很顺利的能够调出QQ,并且也能够将用户名和密码通过发送Edit,setText方法打过去,可是如果直接执行,就只能调出QQ但是不能向里面发送消息,就不可以,我想可能是通过web调用的时候,不同步,就是说找不到QQ对话框。可是问题是我用一个
HWND hwnd=NULL;
while(hwnd==null)
{
hwnd=FindWindow(QQClassName,NULL);
}
这样的话,如果找不到qq对话框的话,按理,他应该是能够继续循环并且之到找为止阿。可是实际上,QQ启动后,网页就死在哪里了,难道是失去了对话框句柄?那为什么单步调的时候就没问题呢?
你对这方面很熟悉,能否帮我看看呢?功能就是找到一个已经运行起来的程序,并且能够向它发送消息。
QQ是自己封装的控件,不是Win32标准控件
我用EnumDesktopWindows,然后在EnumWindowsProc中处理,这样是可以得到QQ的Handle的。
没有在ActiveX中测试,不知道你碰到的是什么问题。