精易论坛

标题: 小弟诚心求教此段代码哪里有错误? [打印本页]

作者: 天上天下    时间: 2013-9-30 14:24
标题: 小弟诚心求教此段代码哪里有错误?
配置项 有时候读取不出    读路径有的时候 显示 “p\config\"  不知道什么原因 求解啊





.版本 2

.支持库 eAPI

.程序集 窗口程序集1
.程序集变量 列表信息, 文本型, , "0"
.程序集变量 列表, 整数型
.程序集变量 分割数组, 文本型, , "0"
.程序集变量 分割路径, 文本型
.程序集变量 zh, 文本型
.程序集变量 器具, 整数型

.子程序 __启动窗口_创建完毕

时钟1.时钟周期 = 500

.子程序 _时钟1_周期事件

列表信息 = 取所有窗口列表 ()
.计次循环首 (取数组成员数 (列表信息), 器具)
    .如果真 (寻找文本 (取窗口标题 (到整数 (列表信息 [器具])), “XXOO载入中..”, , 真) ≠ -1)
        分割数组 = 分割文本 (进程取路径 (“XXOO.exe”), “XXOO.exe”, )
        分割路径 = 分割数组 [1]
        zh = 读配置项 (分割路径 + “\config\XXOO.ini”, “PC”, “IC”, )
        编辑框1.内容 = zh
        时钟1.时钟周期 = 0
        进程结束 (“XXOO.exe”)
    .如果真结束

.计次循环尾 ()

作者: SourceCode    时间: 2013-9-30 14:33
撸主  你写错了吧   

2.jpg (4.84 KB, 下载次数: 2)

截图

截图

作者: 天上天下    时间: 2013-9-30 14:39
莫愁湖畔 发表于 2013-9-30 14:33
撸主  你写错了吧

要是写错了 不可能 读出来啊   现在的问题是 不知道为什么有的时候读不出来  分割出的路径不正确  会变成     ”p\config\XXOO.ini“     这 P 是怎么 来不知道回事..
作者: SourceCode    时间: 2013-9-30 14:40
建议撸主用调试输出()一条一条检查  很快就可以发现问题了
作者: 天上天下    时间: 2013-9-30 14:44
莫愁湖畔 发表于 2013-9-30 14:40
建议撸主用调试输出()一条一条检查  很快就可以发现问题了

试了好多次了   实在不知道原因  不然也不会来发帖子了
作者: SourceCode    时间: 2013-9-30 14:52
天上天下 发表于 2013-9-30 14:44
试了好多次了   实在不知道原因  不然也不会来发帖子了

那你把源码发来  我来搞
作者: 天上天下    时间: 2013-9-30 15:01
莫愁湖畔 发表于 2013-9-30 14:52
那你把源码发来  我来搞

源码 不就在图片下面吗 就这些
作者: jameylp    时间: 2013-9-30 16:45
你在  分割数组,和  分割路径  后设置一下调试断点,看每次读取到的数据是否正确,这样一下就能看出来,是为什么。产生的数据不对怎么能读出配置文件。
作者: jameylp    时间: 2013-9-30 16:48
分割文本之前你应该加一个判断或是如果,来确定你 进程取路径 是否正确,如果不正确,你分割当然没有意义
作者: 月光族    时间: 2013-9-30 17:05
路过楼上都是大神
作者: bailgh    时间: 2013-9-30 17:13

应该这个分割数组[1] 是P
作者: 天上天下    时间: 2013-9-30 17:36
jameylp 发表于 2013-9-30 16:48
分割文本之前你应该加一个判断或是如果,来确定你 进程取路径 是否正确,如果不正确,你分割当然没有意义

这段代码是可以  正常运行  但是不知道 是什么情况下会失效   我试了快百次了  读不出的概率30%     调试输出  分割路径  读不出的  时候是  "p"
作者: jameylp    时间: 2013-10-9 10:04
如果不是每一下都这样,你可以加一个循环判断语句,不正常你就一直循环取路径分割,直到对为止,超时你就退出报错。
作者: ma8803    时间: 2013-10-9 22:26
[e]
.版本 2
.支持库 eAPI

.程序集 窗口程序集1
.程序集变量 列表信息, 文本型, , "0"
.程序集变量 列表, 整数型
.程序集变量 分割数组, 文本型, , "0"
.程序集变量 分割路径, 文本型
.程序集变量 zh, 文本型
.程序集变量 器具, 整数型

.子程序 __启动窗口_创建完毕

时钟1.时钟周期 = 500

.子程序 _时钟1_周期事件

列表信息 = 取所有窗口列表 ()
.计次循环首 (取数组成员数 (列表信息), 器具)
    .如果真 (寻找文本 (取窗口标题 (到整数 (列表信息 [器具])), “XXOO载入中..”, , 真) ≠ -1)
        ' 分割数组 = 分割文本 (进程取路径 (“XXOO.exe”), “XXOO.exe”, )
        ' 分割路径 = 分割数组 [1]
        分割路径 = 子文本替换 (进程_取程序路径 (进程_名取ID (“XXOO.exe”)), “XXOO.exe”, “”, , , 真)
        zh = 读配置项 (分割路径 + “\config\XXOO.ini”, “PC”, “IC”, )
        编辑框1.内容 = zh
        时钟1.时钟周期 = 0
        进程_结束 (进程_名取ID (“XXOO.exe”))
    .如果真结束

.计次循环尾 ()
[/e]

1步骤同原始不一样  在获取地址时  你是分割文本 我直接子文本替换  把程序名字替换为空。
你可以测下   
作者: Yolm    时间: 2013-10-9 23:06
调试输出一下取得的分割数组[1]
作者: 漫步设计    时间: 2013-10-9 23:36
为啥不试一下,处理事件()这个命令




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4