Subject:
腳本專家問題
[Print This Page]
Author:
jAmEs_
Time:
2008-1-9 16:58
Subject:
腳本專家問題
var
IsDelphi: Boolean;
begin
//IsDelphi := Compiler <> cnBCB6; // 為何不能判斷是否在BCB和Delphi環境?
IsDelphi := Pos('Delphi', Application.MainForm.Caption) > 0;
Author:
Passion
Time:
2008-1-9 17:14
用WizOptions.CompilerID吧。
Compiler这些并未在专家脚本中注册。
能使用哪些内容,可以查看PSDeclEx目录下的文件内容。
Author:
jAmEs_
Time:
2008-1-9 17:44
WizOptions.CompilerID不知道怎么用,試過:
IsDelphi := WizOptions.CompilerID <> cnBCB6;不行
看還是我那種方法快速方便
Author:
Passion
Time:
2008-1-9 22:58
把WizOptions.CompilerID 给WriteLn出来看其值嘛。
Author:
jAmEs_
Time:
2008-1-10 09:08
原來是字符型的啊,難怪編譯不通過。
IsDelphi := WizOptions.CompilerID <> 'CB6';
這樣可以。
Author:
Passion
Time:
2008-1-10 09:18
是哇。WizOptions的声明在PSDeclEx的CnWizOptions.pas里头有,使用时可以看看。
Author:
jAmEs_
Time:
2008-1-10 09:42
就是不太想去看才這樣。。。不想了解太多接口了
Author:
shenloqi
Time:
2008-1-10 10:01
IsDelphi := Pos('Delphi', Application.MainForm.Caption) > 0;
这样的代码对于英文版本的Delphi没有问题,可是对于其他语言版本的Delphi估计就不行了吧?
Author:
Passion
Time:
2008-1-10 10:25
那里头都是中文注释,够容易懂吧。
不想了解CW额外提供的接口,就只有想别的硬办法判断了。哈哈。
Author:
jAmEs_
Time:
2008-1-10 17:14
不是容易不容易理解的问题,的确现在软件太多接口了,每年还有大量的概念出现,我是多么希望统一的啊,那样就不用面对选择,呵呵
不过要做的好些就只能去了解了
Author:
jAmEs_
Time:
2008-1-10 17:15
而且我看例子有用Compiler,但是不行,才说问问。。。
Author:
Passion
Time:
2008-1-10 19:42
不对。Compiler应该是行的,注册了的。
比如我在Delphi 7 里头跑脚本。
IsDelphi := Compiler <> cnBCB6;
if IsDelphi then
Writeln('xxxxx');
这句,是会打出来xxxxx的。
Author:
Passion
Time:
2008-1-10 20:07
抱歉,经过检查。我们在注册Compiler的值的时候,对BCB的值处理错位了。导致BCB5 和BCB6的Compiler值判断错误。因此才导致您一开始的脚本判断失败。
这个问题将在下一版本修正。
一个bug,
感谢感谢。
Welcome to CnPack Forum (http://bbs.cnpack.org/)
Powered by Discuz! 5.0.0