oceanwind 发表于 2012-11-9 07:36:33

[已解决]如何利用这个DLL向QQ发消息

本帖最后由 oceanwind 于 2012-11-10 09:14 编辑

这是期货软件金字塔的帮助文件
---------------------------------------------------------
向QQ客户端或QQ群发送指定消息字符串
        TCGroup 对象
TCGroup对象实现了可以向QQ客户端或QQ群发送指定消息字符串的功能.
对象标识 "WWSCommon.TCGroup"
        示例:
Set obj = CreateObject("WWSCommon.TCGroup")
call obj.TransMessage("金字塔自动交易群X", "测试,hello, world! ")
Set obj = Nothing

        方法:
TransMessage   发送消息字符串到QQ客户端或QQ群
TransMessage 方法
发送消息字符串到QQ客户端或QQ群,注意每次发送间隔不能小于3秒,否则将视为无效指令
TransMessage(WindowName, Message)
WindowName       要发送的QQ客户端窗口标题名称,必须要严格文字的大小写匹配,可以同时发送多个窗口,用分号分割.使用时要确保窗口处于打开状态.
Message         发送的信息内容
返回值: 返回实际发送成功的窗口数量

备注:
该插件会在2.8版及其之后的版本中安装程序中自带,之前的用户可以通过下面方法安装
1. 下载DLL文件 http://www.weistock.com/download/WWSCommon.dll ,并将其放在C:\盘根目录
2. 点WINDOWS"开始"按钮->运行, 输入regsvr32 C:\WWSCommon.dll
--------------------------------------------------------------------------
如何调用之
谢谢先.

annybaby 发表于 2012-11-9 10:20:32

回复 1# oceanwind


    搜索论坛的dllcall帖子

zch11230 发表于 2012-11-9 11:30:38

#AutoIt3Wrapper_UseX64=n
$obj=ObjCreate("WWSCommon.TCGroup")
$obj.TransMessage("标题一;标题二;标题三","内容")试了一下 先要注册这个DLL需要发送的窗口需要为打开状态 且多个窗口不能合并,每条消息都会跟个“该消息由金字塔交易决策系统提供。”的尾巴 用分号分隔多个窗口 窗口标题需完全匹配

oceanwind 发表于 2012-11-9 12:40:24

试了一下 先要注册这个DLL需要发送的窗口需要为打开状态 且多个窗口不能合并,每条消息都会跟个“该消息由 ...
zch11230 发表于 2012-11-9 11:30 http://www.autoitx.com/images/common/back.gif
谢谢
看来这个还不错....
PS:那些个参数 你是怎么试出来的呀?

annybaby 发表于 2012-11-9 12:48:12

回复 4# oceanwind

晕,参数你自己都已经在主帖里写了啊       方法:
TransMessage   发送消息字符串到QQ客户端或QQ群
TransMessage 方法
发送消息字符串到QQ客户端或QQ群,注意每次发送间隔不能小于3秒,否则将视为无效指令
TransMessage(WindowName, Message)
WindowName       要发送的QQ客户端窗口标题名称,必须要严格文字的大小写匹配,可以同时发送多个窗口,用分号分割.使用时要确保窗口处于打开状态.
Message         发送的信息内容
返回值: 返回实际发送成功的窗口数量带尾巴的啊,有啥用啊

楼上风云 发表于 2012-11-9 15:06:19

回复 3# zch11230
简单地修改了DLL,不再出现“该消息由金字塔交易决策系统提供。”

oceanwind 发表于 2012-11-9 17:48:25

回复zch11230
简单地修改了DLL,不再出现“该消息由金字塔交易决策系统提供。”
楼上风云 发表于 2012-11-9 15:06 http://www.autoitx.com/images/common/back.gif

高手!
能不能贴个源码出来观摩一下啊

楼上风云 发表于 2012-11-9 21:24:44

回复 7# oceanwind

三楼代码就是示例啊。

#AutoIt3Wrapper_UseX64=n
$obj=ObjCreate("WWSCommon.TCGroup")
$obj.TransMessage("打开的QQ对话窗口1;打开的QQ对话窗口2;打开的QQ对话窗口3","群发内容")

annybaby 发表于 2012-11-9 22:39:26

回复 6# 楼上风云


    如果可以分享下"简单修改"的方法就更好啦~~

oceanwind 发表于 2012-11-9 23:21:16

回复oceanwind

三楼代码就是示例啊。

#AutoIt3Wrapper_UseX64=n
$obj=ObjCreate("WWSCommon.TC ...
楼上风云 发表于 2012-11-9 21:24 http://www.autoitx.com/images/common/back.gif
C++ DLL源码...

风行者 发表于 2012-11-10 03:59:18

"使用时要确保窗口处于打开状态."
看到这句话,我即时石化了!

我只能说controlsend!!一切尽在不言中

楼上风云 发表于 2012-11-11 07:28:14

回复 11# 风行者


    我也想这个DLL的实际作用并不大,如果窗口已经打开,用大侠说的controlsend足够可以实现同样的功能。

楼上风云 发表于 2012-11-11 07:33:28

回复 9# annybaby


    说出来你也会想,很简单的嘛:
十六制数据编辑。

楼上风云 发表于 2012-11-11 07:35:07

回复 10# oceanwind

DLL源码?找原作者要,我没办法还原,即使反编译了,也不能共享到这里啊。

annybaby 发表于 2012-11-11 09:16:59

回复 12# 楼上风云

确实如此,而且在某种程序上来说,还不如controlsend(),至少controlsend()可以后台,不影响正常工作,这个DLL还需要前台输入,而且,如果上一次光标不是定位在消息窗口或者输入信息窗口,就无法发送成功~~
controlsend也有不足之处是只能在光标定位于输入框时,才发送成功~~请教下,如果解决此问题??{:face (382):}
页: [1] 2 3
查看完整版本: [已解决]如何利用这个DLL向QQ发消息