以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  [求助]关于利用VBS向QQ发送消息的插件  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=86407)

--  作者:saintlucifer
--  发布时间:2015/10/20 14:42:43
--  [求助]关于利用VBS向QQ发送消息的插件

按上述帖子分别在Function里面跟公式里面都编写好对应的部分,但是在发送消息到QQ里面的时候,就只能发送如下消息:

  交易系统信号发布   2015/10/20 14:31:31
 信号 
 该消息由金字塔交易决策系统提供。 

上面显示的“信号”后面,应该还有一段字符串的,就是在公式组里面的QQSTR的全局字符串变量无法传递到QQMSGX里面,或者说QQMSGX里面的QQMSG参数无法引用公式里面的数值,请问怎么解决?
[此贴子已经被作者于2015/10/20 14:43:14编辑过]

--  作者:王锋
--  发布时间:2015/10/20 15:56:39
--  
自定义函数是无法传递字符串变量的,不知道你具体的代码是怎么写的,建议你都贴过来。
--  作者:saintlucifer
--  发布时间:2015/10/20 16:04:24
--  
我就照抄了连接里面的代码啊,它正常来说在“信号”后面应该会发送下面几个字符串里面的东西:
extgbstringSet(\'QQSTR\',\'PR \'+numtostr(close,5) + \' OB \'+numtostr(h,5)+\' OS \'+numtostr(l,5) );
extgbstringSet(\'QQSTR\',\'1分钟超卖,尝试开多:\'+numtostr(close,5));
extgbstringSet(\'QQSTR\',\'1分钟超买,尝试开空:\'+numtostr(close,5));

但是一直只发送:

交易系统信号发布   2015/10/20 14:31:31
 信号 
 该消息由金字塔交易决策系统提供。 

就是“信号”后面是空的。

--  作者:yukizzc
--  发布时间:2015/10/20 16:43:15
--  

都一样的?我这试了下你这段代码发送也正常

你看下工具-数据管理-全局变量

这边的字符串传入了吗?

function里面加个输出语句,看下能否输出

application.MsgOut QQMSG


--  作者:saintlucifer
--  发布时间:2015/10/20 17:02:05
--  
在全局变量里面字符串没有传入,在function里面加了那个语句也没有输出哦
--  作者:yukizzc
--  发布时间:2015/10/20 17:10:26
--  

那说明你pel里面全局变量的存入都不对了,你确定extgbstringSet这个函数自己么有问题吗?

你先调试这个函数,extgbstringSet(\'QQSTR\',\'1分钟超买,尝试开空:\'+numtostr(close,5));

就执行这句话呢?另外ex这类全局变量的输入,你本地一个都不行??

 


--  作者:saintlucifer
--  发布时间:2015/10/20 22:18:33
--  
我是直接copy帖子里面的代码进去的,也注册了那个dll的文件,话说我也真不是很清楚这个函数有没有问题啊
--  作者:王锋
--  发布时间:2015/10/21 8:53:37
--  

先尝试理解公式里的代码例子,另外自己要学会使用一些简单的调试技巧。

参考

http://www.weistock.com/bbs/dispbbs.asp?boardid=16&Id=57075 问题4


--  作者:saintlucifer
--  发布时间:2015/10/21 9:07:47
--  
一般的调试我会啊,我自己也在做程序化实盘的,就是没用过这个extgbstringSet函数,我就不明白为什么照抄的两段代码,extgbstringSet的全局变量返回不到function里面啊
--  作者:saintlucifer
--  发布时间:2015/10/21 9:24:07
--  
现在问题的关键就是
extgbstringSet(\'QQSTR\',\'PR \'+numtostr(close,5) + \' OB \'+numtostr(h,5)+\' OS \'+numtostr(l,5) );
extgbstringSet(\'QQSTR\',\'1分钟超卖,尝试开多:\'+numtostr(close,5));
extgbstringSet(\'QQSTR\',\'1分钟超买,尝试开空:\'+numtostr(close,5));

这三行代码在公式里面无法创建QQSTR的全局变量,后面的字符串写不进去,请问下是为什么?