以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  [原创] 向通过判断机器码来确定指标是否可用  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=152654)

--  作者:marlon37
--  发布时间:2017/5/9 16:18:23
--  [原创] 向通过判断机器码来确定指标是否可用
向通过判断机器码来确定指标是否可用,这样写问题出在哪里?
IF STRTONUM(ENGINCODE()) =\'A06E86AEFA4D7\' THEN EXIT;

--  作者:qq代人发帖
--  发布时间:2017/5/9 16:29:11
--  
机器码是字符串,应该不需要转换成数字来和\'A06E86AEFA4D7\'  进行对比吧。
--  作者:pyd
--  发布时间:2017/5/9 16:32:05
--  

http://www.weistock.com/bbs/dispbbs.asp?BoardID=4&ID=53236&skin=0

参考问题2.3


--  作者:marlon37
--  发布时间:2017/5/9 17:05:18
--  [原创] 向通过判断机器码来确定指标是否可用
修改后 依然 达不到  退出的效果 
IF ENGINCODE() =\'A06E86AEFA4D7\' THEN EXIT;

--  作者:qq代人发帖
--  发布时间:2017/5/9 17:11:28
--  

1.Exit 会终止公式的执行,不知道您想要的是否是这个功能

2.有单独输出机器码吗?这样可以和\'A06E86AEFA4D7\' 对比下 以此来判断IF条件语句到底是否触发了执行条件。


--  作者:pyd
--  发布时间:2017/5/9 17:17:18
--  

不一定非要用退出的方法,可以把代码放在下边的begin 和end之间

drawtextex(1,1,200,800,engincode());
rzb:=strcmp(engincode(),\'888888888\'); //888888888替换成你的机器码
if rzb=0 then                          //等于0说明这台正是你指定的那台机器?begin
这一段加上指标代码
end


--  作者:marlon37
--  发布时间:2017/5/9 17:23:36
--  [原创] 向通过判断机器码来确定指标是否可用
我想实现的功能是,
我的指标只有在我授权的机器上执行,通过机器码的比较判断是否授权,如果没有授权就退出,如果没有授权就执行指标

--  作者:pyd
--  发布时间:2017/5/9 17:32:53
--  

链接2.3的例子里就是正确的写法

例如

drawtextex(1,1,200,800,engincode());
rzb:=strcmp(engincode(),\'888888888\');
if rzb<>0 then
begin
drawtextex(1,1,500,500,\'程序不能在此计算机上运行\');
exit;
end

buy(1,1,marketr);

我的机器码不是888888888就不会执行buy语句,只有机器码是888888888才会继续执行exit后边的语句,你自己试试看