开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1914|回复: 10
收起左侧

[易语言] 待我不公哇,这问题怎么会出现在我身上!谁来解答!

[复制链接]
结帖率:46% (16/35)
发表于 2012-6-3 18:56:01 | 显示全部楼层 |阅读模式   内蒙古自治区赤峰市
10精币
text="abc"
MsgBox(UCase(StrReverse(text)))
这段VBS脚本没问题吧,我自己在无线程的E脚本组件上试过了……能够运行……有线程的E脚本组件上也试过了,也能够运行。
测试能够运行的代码:
  1. .版本 2
  2. .支持库 EThread

  3. .程序集 窗口程序集2
  4. .程序集变量 类, 脚本

  5. .子程序 _按钮1_被单击

  6. 类.清除 ()
  7. .如果 (启动线程 (&子程序1, , ))
  8. 输出调试文本 (“执行成功”)
  9. .否则
  10. 输出调试文本 (“执行失败”)
  11. .如果结束


  12. .子程序 _按钮2_被单击

  13. 输出调试文本 (类.运行 (编辑框1.内容))

  14. .子程序 _按钮3_被单击

  15. 输出调试文本 (类.计算表达式 (编辑框1.内容))


  16. .子程序 子程序1

  17. .如果 (_执行 (编辑框1.内容))
  18. 输出调试文本 (“执行代码成功”)
  19. .否则
  20. 输出调试文本 (“执行代码失败”)
  21. .如果结束



  22. .子程序 _执行, 逻辑型
  23. .参数 代码, 文本型
  24. .局部变量 脚本, 脚本
  25. .局部变量 bool_是否为真, 逻辑型

  26. bool_是否为真 = 脚本.执行 (代码)
  27. 返回 (bool_是否为真)

复制代码
不能运行的代码:
  1. .版本 2

  2. .局部变量 对象, VBS脚本类
  3. .局部变量 i, 整数型
  4. .局部变量 sz_代码分页, 文本型, , "0"
  5. .局部变量 代码1, 整数型
  6. .局部变量 代码2, 整数型
  7. .局部变量 text_代码, 文本型
  8. .局部变量 tx_错误信息, 错误信息

  9. 对象.属性_语言 (1)
  10. ' tx_错误信息.初始化 (对象)
  11. .变量循环首 (1, 2, 1, i)
  12. 加入成员 (sz_代码分页, _知识库._ZSK_取出 (int_线程序号 × 10 + i))
  13. .变量循环尾 ()
  14. 对象.清除 ()
  15. .计次循环首 (2, 代码1)
  16. .计次循环首 (2, 代码2)
  17. text_代码 = sz_代码分页 [代码1] + #换行符 + sz_代码分页 [代码2]
  18. .判断开始 (对象.执行 (text_代码) = 真)
  19. _知识库._ZSK_加入日志 (_知识库._ZSK_加入日志项 (“运行代码成功:” + text_代码))
  20. 加入成员 (sz_代码, text_代码)
  21. 对象.清除 ()
  22. .默认
  23. tx_错误信息 = 对象.属性_错误信息 ()
  24. _知识库._ZSK_加入日志 (_知识库._ZSK_加入日志项 (“运行代码失败:” + text_代码 + “ 错误信息:” + tx_错误信息.错误描述 ())) ' + 错误信息到文本 (tx_错误信息)))
  25. 对象.清除 ()
  26. .判断结束

  27. .计次循环尾 ()
  28. .计次循环尾 ()
  29. 加入成员 (sz_是否执行完毕, 真)
  30. 输出调试文本 (“线程” + 到文本 (int_线程序号) + “完成”)
  31. 返回 ()
复制代码
为什么一个能运行一个不能运行?


回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳

结帖率:100% (5/5)

签到天数: 3 天

发表于 2012-6-3 19:10:58 | 显示全部楼层   山西省临汾市
没有支持库?
回复

使用道具 举报

结帖率:46% (16/35)
 楼主| 发表于 2012-6-3 20:13:47 | 显示全部楼层   内蒙古自治区赤峰市
易团僧 发表于 2012-6-3 19:10
没有支持库?

没用支持库,用的是类
  1. .版本 2

  2. .程序集 VBS脚本类, , 公开
  3. .程序集变量 脚本对象, 对象
  4. .程序集变量 错误信息, 错误信息

  5. .子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用

  6. CoInitialize (0)
  7. 脚本对象.创建 (“ScriptControl”, )
  8. 脚本对象.写属性 (“Language”, “vbs”)

  9. .子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用

  10. CoUninitialize ()
  11. 错误信息.清除 ()
  12. 脚本对象.清除 ()

  13. .子程序 属性_语言, 整数型, 公开, 返回以下值:0.JScript;1.VBScript;-1.语言为空。当类的语言属性未指定时,默认为1,VBScript。
  14. .参数 新语言属性, 整数型, 可空, 可供选择的属性值:0. JScript   1. VBScript

  15. .如果真 (是否为空 (新语言属性) = 假)
  16.     .判断开始 (新语言属性 = 0)
  17.         脚本对象.写属性 (“Language”, “vbs”)
  18.     .默认
  19.         脚本对象.写属性 (“Language”, “JScript”)
  20.     .判断结束

  21. .如果真结束
  22. .判断开始 (脚本对象.读文本属性 (“Language”, ) = “vbs”)
  23.     返回 (1)
  24. .判断 (脚本对象.读文本属性 (“Language”, ) = “JScript”)
  25.     返回 (0)
  26. .默认
  27.     返回 (-1)
  28. .判断结束


  29. .子程序 属性_错误信息, 错误信息, 公开, 返回错误信息

  30. 错误信息.初始化 (脚本对象.读对象型属性 (“Error”, ))
  31. 返回 (错误信息)

  32. .子程序 属性_超时, 整数型, 公开, 设置或返回时间(毫秒),此时间后用户可选择中止脚本代码的执行或允许代码继续执行。
  33. .参数 新超时属性值, 整数型, 可空, 当为-1时,使脚本引擎的执行无超时

  34. .如果真 (是否为空 (新超时属性值) = 假)
  35.     脚本对象.写属性 (“Timeout”, 新超时属性值)
  36. .如果真结束
  37. 返回 (脚本对象.读数值属性 (“Timeout”, ))

  38. .子程序 属性_状态, 整数型, 公开
  39. .参数 新状态值, 整数型, 可空, 参数值为以下值之一: 0、Initialized; 1、Connected

  40. .如果真 (是否为空 (新状态值) = 假)
  41.     脚本对象.写属性 (“State”, 新状态值)
  42. .如果真结束
  43. 返回 (脚本对象.读数值属性 (“State”, ))

  44. .子程序 属性_是否使用图形界面, 逻辑型, 公开
  45. .参数 新是否使用图形界面属性, 逻辑型, 可空

  46. .如果真 (是否为空 (新是否使用图形界面属性) = 假)
  47.     脚本对象.写属性 (“AllowUI”, 新是否使用图形界面属性)
  48. .如果真结束
  49. 返回 (脚本对象.读逻辑属性 (“AllowUI”, ))

  50. .子程序 属性_图形界面父窗口句柄, 整数型, 公开
  51. .参数 新父窗口句柄, 整数型, 可空

  52. .如果真 (是否为空 (新父窗口句柄) = 假)
  53.     脚本对象.写属性 (“SitehWnd”, 新父窗口句柄)
  54. .如果真结束
  55. 返回 (脚本对象.读数值属性 (“SitehWnd”, ))

  56. .子程序 添加代码, , 公开
  57. .参数 代码文本, 文本型

  58. 脚本对象.数值方法 (“AddCode”, 代码文本)

  59. .子程序 运行, 文本型, 公开, 在添加的代码中运行指定的过程,如有返回值返回相应文本,否则返回空文本。
  60. .参数 过程或函数名, 文本型
  61. .参数 参数, 文本型, , 最多支持30个参数
  62. .局部变量 I, 整数型

  63. I = 取数组下标 (参数, )
  64. .判断开始 (I = 0)
  65.     返回 (脚本对象.文本方法 (“Run”, 过程或函数名))
  66. .默认

  67. .判断结束
  68. 返回 (“”)

  69. .子程序 执行, 逻辑型, 公开, 执行指定的代码文本。返回真为执行正常,返回假为出错,错误信息可以从“错误信息”属性中取得。
  70. .参数 脚本代码, 文本型, , 可使用常量 #md5

  71. 脚本对象.数值方法 (“ExecuteStatement”, 脚本代码)
  72. 返回 (脚本对象.取错误 () = “”)

  73. .子程序 计算表达式, 文本型, 公开, 计算表达式并返回结果。
  74. .参数 表达式, 文本型

  75. 返回 (脚本对象.文本方法 (“Eval”, 表达式))


  76. .子程序 清除, , 公开

  77. 脚本对象.数值方法 (“Reset”, )

  78. .子程序 未封装的属性及方法

  79. ' 类型: IScriptControl  10个属性,6个方法,标记: {0E59F1D3-1FBE-11D0-8FF2-00A0D10038BC}
  80. ' -------------------------------- 属性列表 --------------------------------
  81. ' 属性读取格式: 〈逻辑型〉 对象.读逻辑属性 ("UseSafeSubset")
  82. ' 属性写入格式: 〈逻辑型〉 对象.写属性 ("UseSafeSubset",欲写入属性值)
  83. ' 参数<1>的名称为“欲写入属性值”,类型为“逻辑型”。
  84. ' 解释:Force script to execute in safe mode and disallow potentially harmful actions


  85. ' 属性读取格式: 〈对象(IScriptModuleCollection)〉 对象.读对象型属性 ("Modules")
  86. ' 解释:Collection of modules for the ScriptControl

  87. ' 属性读取格式: 〈对象〉 对象.读对象型属性 ("CodeObject")
  88. ' 解释:Object exposed by the scripting engine that contains methods and properties defined in the code added to the global module


  89. ' 属性读取格式: 〈对象(IScriptProcedureCollection)〉 对象.读对象型属性 ("Procedures")
  90. ' 解释:Collection of procedures that are defined in the global module


  91. ' -------------------------------- 方法列表 --------------------------------
  92. ' 方法调用格式: 〈整数型〉 对象.数值方法 ("AddObject",Name,Object,AddMembers)
  93. ' 参数<1>的名称为“Name”,类型为“文本型”。
  94. ' 参数<2>的名称为“Object”,类型为“对象”。
  95. ' 参数<3>的名称为“AddMembers”,类型为“逻辑型”,参数默认值为“假”。
  96. ' 解释:Add an object to the global namespace of the scripting engine

复制代码
  1. .版本 2

  2. .程序集 错误信息, , 公开
  3. .程序集变量 对象, 对象

  4. .子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用



  5. .子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用

  6. 清除 ()
  7. 对象.清除 ()

  8. .子程序 初始化, , 公开
  9. .参数 错误对象, 对象

  10. 对象 = 错误对象

  11. .子程序 错误代码, 整数型, 公开

  12. 返回 (对象.读数值属性 (“Number”, ))

  13. .子程序 错误源, 文本型, 公开

  14. 返回 (对象.读文本属性 (“Source”, ))

  15. .子程序 错误描述, 文本型, 公开

  16. 返回 (对象.读文本属性 (“Description”, ))

  17. .子程序 错误代码行文本, 文本型, 公开

  18. 返回 (对象.读文本属性 (“Text”, ))

  19. .子程序 错误代码行位置, 整数型, 公开

  20. 返回 (对象.读数值属性 (“Line”, ))

  21. .子程序 错误代码列位置, 整数型, 公开

  22. 返回 (对象.读数值属性 (“Column”, ))

  23. .子程序 清除, , 公开, 清除错误对象

  24. 对象.数值方法 (“Clear”, )

  25. .子程序 错误查阅帮助文件名, 文本型, 公开

  26. 返回 (对象.读文本属性 (“HelpFile”, ))

  27. .子程序 错误查阅帮助文件上下文ID, 整数型, 公开

  28. 返回 (对象.读数值属性 (“HelpContext”, ))

复制代码
回复

使用道具 举报

结帖率:100% (5/5)

签到天数: 3 天

发表于 2012-6-3 20:14:47 | 显示全部楼层   山西省临汾市
_  _  汗菜鸟飘过
回复

使用道具 举报

结帖率:92% (12/13)
发表于 2012-6-3 20:19:22 | 显示全部楼层   江西省鹰潭市
易团僧 发表于 2012-6-3 20:14
_  _  汗菜鸟飘过

不说你是菜鸟,是人看到这么大串的源码头也晕了
回复

使用道具 举报

结帖率:100% (5/5)

签到天数: 3 天

发表于 2012-6-3 20:31:10 | 显示全部楼层   山西省临汾市
j874574675 发表于 2012-6-3 20:19
不说你是菜鸟,是人看到这么大串的源码头也晕了

真不会   脚本、、、
回复

使用道具 举报

结帖率:46% (16/35)
 楼主| 发表于 2012-6-3 20:42:31 | 显示全部楼层   内蒙古自治区赤峰市
易团僧 发表于 2012-6-3 20:31
真不会   脚本、、、

。。。。。。
那个……能不能帮忙看下理论上有木有什么问题……
@千年 @微风吹 @迷离 @易团僧 @蟋蟀 @exit11
回复

使用道具 举报

结帖率:46% (16/35)
 楼主| 发表于 2012-6-4 20:44:34 | 显示全部楼层   内蒙古自治区赤峰市
j874574675 发表于 2012-6-3 20:19
不说你是菜鸟,是人看到这么大串的源码头也晕了

那你说我是菜鸟……而且那些类源码是没问题的……就是执行线程运行时有问题……
回复

使用道具 举报

结帖率:92% (12/13)
发表于 2012-6-4 21:11:31 | 显示全部楼层   江西省鹰潭市
新来的小子 发表于 2012-6-4 20:44
那你说我是菜鸟……而且那些类源码是没问题的……就是执行线程运行时有问题……

我没说你是菜鸟额,我是菜鸟,你要弄清楚我话的意思啊,我说我菜鸟,看到这么串源码头晕
回复

使用道具 举报

结帖率:100% (8/8)
发表于 2012-6-5 02:43:49 | 显示全部楼层   贵州省安顺市
线程启动的子程序 执行前 加载COM()  试试!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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