TC官方合作论坛

 找回密码
 立即注册
查看: 16439|回复: 350
打印 上一主题 下一主题

【基础篇】7、2013编程十要素

  [复制链接]
跳转到指定楼层
#
发表于 2012-10-2 08:47:22 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
TC编程必不可少的十大要素:
在TC中我们必须掌握以下十大要素,只要能熟悉了这十大语句,那么用TC写脚本你就具有了一定的基础,下面我们先来看看语句的概述和例子:
已更新为4.0以上版本!

一、“TC命名空间定义语句”
  其在TC代码中表现形式为:  空间+空格+命名空间名称 namespace+空格+命名空间名称
  如:空间 测试 或 namespace 测试

二、“TC功能定义语句
  其在TC代码中表现形式为:  功能+空格+函数名称() function+空格+函数名称()
  如:功能 开始() 或 function start()

三、“TC函数返回语句”
  其在TC代码中表现形式为:  返回+空格+返回值  或 return+空格+返回值
  如:返回 真return true

四、“TC函数结束语句”
  其在TC代码中表现形式为: 功能结束endfunction


五、“TC变量定义语句”
  其在TC代码中表现形式为: 变量+空格+变量名 或 var +空格+变量名 或者直接写变量也是可以的
  如:变量 标记 或 var mark  ||  标记 或 mark


六、“TC赋值语句”
  其在TC代码中表现形式为:变量 = 传递值 (将右边的值传递给左边的变量,从右至左进行) 这可不是等于号哦 等于号在TC中表现形式为:“==”
  如:标记 = 或 mark = true


七、“TC命令语句”
  其在TC代码中表现形式为:内部接口名.内部函数名(传递值)
  如:辅助.消息框("欢迎来到TC!") 或 help.messagebox("welcome to TC!")


八、“TC流程语句”
  其在TC代码中表现形式为:如果(表达式) 或 if(表达式) ,循环(表达式) 或 while(表达式) ,选择(表达式) 或 select(表达式) ,继续 或continue ,跳出 或 break ,遍历(表达式) 或 for(表达式)  ,goto(表达式)或 跳转(表达式)
  注:4.0版本之后去掉了重复语句,而加入了遍历语句以及跳转语句。


九、“预定义语句”
其在TC代码中表现形式为:#+include+"文件名.t"
如:#include"异常处理.t"

十、“外部接口导入语句”
其在TC代码中表现形式为:自定义对象名称+=com("接口名")
如:dm暗殇 = com("dm.dmsoft")//[大漠对象创建]


注意注意啦4.0以上版本:初始化插件注册问题,新手老手稍微注意一下,下面来看个例子进行说明:
游客,如果您要查看本帖隐藏内容请回复
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
回复

使用道具 举报

350#
发表于 2018-2-19 19:12:12 | 只看该作者
sdfsdfsdfsdfsa
回复 支持 反对

使用道具 举报

349#
发表于 2018-1-26 22:41:30 | 只看该作者
hfgggdjhg
回复

使用道具 举报

348#
发表于 2017-10-27 17:49:30 | 只看该作者
调用:
功能 初始化()
    //------第一步:初始化注册插件
    // 首先打包dm.dll和RegDll.dll到附件,当然如果你还有其它资源(字库,图片等)也可以一并打包
    // 这个 插件版本 作为本脚本需要使用的插件版本. 如果要换插件时,记得更改这个值.
    插件版本 = "3.1233"
    dm=大漠多开单停.注册大漠插件(辅助.获取资源路径("rc:"),插件版本)
    ver = dm.Ver()
    调试输出(ver)
功能结束
源码:

//一个标准的注册大漠插件的例子
功能 注册大漠插件(插件路径,插件版本)
   
    // 插件需要用到atl系统库,有些XP精简系统会把atl.dll精简掉. 为了防止注册失败,这里手动注册一下atl.dll
    //ws=com("Wscript.Shell")
    //ws.run("regsvr32 atl.dll /s")
    //ws=null
    //上面的代码在TC里面调用貌似没什么反应 所以我们更改为下面代码
    辅助.命令("regsvr32 atl.dll /s",false)
   
    // 插件注册开始>>>>>>>>>>>>>>>>>>>
    // 下面开始注册插件,先尝试用TC来注册.这里注意请勿把dm.dll释放在系统目录.以免造成版本错误.
    辅助.注册插件(插件路径&"dm.dll",真)
   
    // 这里判断是否注册成功
    dm=com("dm.dmsoft")
    如果(类型.获得类型(dm)!="插件")
        dm = null
        //如果上面的方法注册失败那么使用下面的方法进行注册
        //再尝试用regsvr32 来注册. 这里注意请勿把dm.dll释放在系统目录.以免造成版本错误.
        //ws=com("Wscript.Shell")
        //ws.run("regsvr32 "&插件路径&"dm.dll /s")
        //ws=null
        
        //同样的 上面的代码木有反应我们改成下面的代码进行注册
        是否成功=辅助.命令("regsvr32 "&插件路径&"dm.dll",false)
        辅助.等待(500)
        辅助.命令("taskkill /f /im regsvr32.exe",false)//注册成功后会弹出一个对话框,为了不影响后面的操作 我们直接调用命令结束掉这个对话框
    如果结束
   
    // 再判断插件是否注册成功
    dm=com("dm.dmsoft")
    如果(类型.获得类型(dm)=="插件")
        ver = dm.Ver()
        如果(ver != 插件版本)
            //这时,已经确认插件注册失败了。 弹出一些调试信息,以供分析.
            辅助.消息框("插件版本错误,当前使用的版本是:"&ver&",插件所在目录是:"&dm.GetBasePath()&"\n请关闭程序,重新打开本程序再尝试")
            辅助.退出()
        否则
            //注册成功 并且版本 匹配 返回大漠插件对象
            返回 dm
        如果结束
    否则
        辅助.消息框("插件注册失败,重新打开本程序再尝试")
        辅助.退出()
    如果结束
功能结束
回复 支持 反对

使用道具 举报

347#
发表于 2017-6-1 15:12:03 来自手机 | 只看该作者
荡寇英雄
回复

使用道具 举报

346#
发表于 2016-9-12 12:42:03 来自手机 | 只看该作者
牛逼,我是自愧不如
回复 支持 反对

使用道具 举报

345#
发表于 2016-9-3 19:31:03 | 只看该作者
查看 习惯英文(⊙o⊙)…
回复 支持 反对

使用道具 举报

344#
发表于 2016-9-2 23:33:10 | 只看该作者
看看看
回复

使用道具 举报

343#
发表于 2016-8-31 06:05:32 | 只看该作者
11111111111111111111111111
回复 支持 反对

使用道具 举报

342#
发表于 2016-7-2 16:36:18 | 只看该作者
简要明快.哈
回复 支持 反对

使用道具 举报

341#
发表于 2015-3-1 02:04:04 | 只看该作者
看看
回复

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-9-19 01:24 , Processed in 0.125532 second(s), 23 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表