无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: mdyblog
打印 上一主题 下一主题

[更新376#2825]PECMD2012.1.80.13_Win32_64.多窗口多线程.裸机系统2.3.3.1+18M酷M...

    [复制链接]
5941#
 楼主| 发表于 2013-6-2 19:42:24 | 只看该作者
hhh333 发表于 2013-6-2 18:56
64位的下拉列表拉不下,6.2的最新版也是如此。按上下键可调节取值,同样代码在32位上正常。

        LIST LstMount,L16T104W214H20,%AllDrive%,,Y:
改为:
        LIST LstMount,L16T104W214H220,%AllDrive%,,Y:
H就是可下拉的最大高度。 Win64 个头大,代码多,会认真来检查的!!!!
WIN32 没有和我们较真。

点评

敢情64位中H代表拉下来的高度,有点别扭,那本身不下拉的高度怎么办?  详情 回复 发表于 2013-6-2 23:05
回复

使用道具 举报

5942#
发表于 2013-6-2 22:14:40 | 只看该作者
mdyblog 发表于 2013-5-30 22:07
X64    X32  都一样。
其实不是自动加密, 是我把某些 重要文档目录加密了。 然后卸载密匙。 在需要时 ...

不要用微软的加密了,管理起来很麻烦。
如果你只是要对文件夹加密,为什么不随便找个加密软件?
网上多的是,随便设个口令好了,比每次加载秘钥方便啊
回复

使用道具 举报

5943#
发表于 2013-6-2 23:05:20 | 只看该作者
mdyblog 发表于 2013-6-2 19:42
LIST LstMount,L16T104W214H20,%AllDrive%,,Y:
改为:
        LIST LstMount,L16T104W214H220 ...

敢情64位中H代表拉下来的高度,有点别扭,那本身不下拉的高度怎么办?

点评

第三方的强度不够,安全性不能保证。 很多是投机取巧,只是把文件(目录)改名,藏来藏去。 真正的数据是没加密的!!!!!, 文件搬来搬去, 跟容易丢, 多系统下也不好管理。 系统重装,信息丢失, 文件也找  详情 回复 发表于 2013-6-3 06:21
是的。敢情64位中H代表拉下来的高度。 32为也一样,只是没较真。 不下拉的高度是自动设定,一行字的高度。  详情 回复 发表于 2013-6-3 06:04
回复

使用道具 举报

5944#
 楼主| 发表于 2013-6-3 06:04:16 | 只看该作者
本帖最后由 mdyblog 于 2013-6-3 06:42 编辑
hhh333 发表于 2013-6-2 23:05
敢情64位中H代表拉下来的高度,有点别扭,那本身不下拉的高度怎么办?


是的。敢情64位中H代表拉下来的高度。 32为也一样,只是没较真。
不下拉的高度是自动设定,一行字的高度。

在PECMDEDIT设计模式很清楚,如下图。 MS 的VC6等界面设计器 也大体如此。




这个值有作用: 当列表很长,可以用滚动条来看。 指定的高度就是可视部分高度,其余部分需要滚动了。
有个示例: 多线程.界面长时间初始化.WCS 里面的文件列表就这样。
回复

使用道具 举报

5945#
 楼主| 发表于 2013-6-3 06:21:01 | 只看该作者
hhh333 发表于 2013-6-2 23:05
敢情64位中H代表拉下来的高度,有点别扭,那本身不下拉的高度怎么办?

第三方的强度不够,安全性不能保证。
很多是投机取巧,只是把文件(目录)改名,藏来藏去。  真正的数据是没加密的!!!!!,

文件搬来搬去, 跟容易丢, 多系统下也不好管理。
系统重装,信息丢失, 文件也找不到了。  2000年的就这样一个文档目录这样消失了,后来再也不用了。

windows加密,找出点门道,还能凑合:
(1) 不用文件夹加密, 只加密文件。 这样不会自动加密新的文件。
      为了方便加密大量新文件,可以单独建立一个加密目录,新文件先放到这里,再移到真正的目录。
(2) 写了个小脚本,来提示 文件加密了。

重要文件.wcs:
READ %CurFile%.ini,1,&&Line
exec $= %&CurDir%                  //打开文件夹
FIND  $""="%&Line%", WIN1     //提示加密了
_SUB WIN1,W160H100,加密了哦!,,shell32.dll#237,,, -top
_END
-------------------------------
重要文件.wcs.ini 是被加密了。 里面随便写1行。脚本检测设个文件。
重要文件.wcs   在桌面建一个快捷方式【重要文件】。
如果没加载密码证书, 打开目录时,提示【加密了哦!】

点评

HASH命令得到的文件hash值,例如md5吧,可以通过变量%PSWh%获取,那如何进行比较呢?  详情 回复 发表于 2013-6-4 06:58
1、基本清楚了,是32位没较真而已,我把这个值设大一些,应该不会影响32位的吧。感觉64位系统确实要严格许多。 2、64位PE系统在LOGO以后弹出的窗体中,再通过按钮调用文件浏览,窗口出不来,而事实上已经运行了,感  详情 回复 发表于 2013-6-3 11:06
回复

使用道具 举报

5946#
发表于 2013-6-3 11:06:28 | 只看该作者
mdyblog 发表于 2013-6-3 06:21
第三方的强度不够,安全性不能保证。
很多是投机取巧,只是把文件(目录)改名,藏来藏去。  真正的数据 ...

1、基本清楚了,是32位没较真而已,我把这个值设大一些,应该不会影响32位的吧。感觉64位系统确实要严格许多。
2、64位PE系统在LOGO以后弹出的窗体中,再通过按钮调用文件浏览,窗口出不来,而事实上已经运行了,感觉到它在LOGO图片后面,快进系统时还是可以看到。

点评

1. 是的 2: 可在新窗口内, ENVI @this.POS=::::3 TIME -t:1 ,100, ENVI @this.POS=::::3 支持多线程、多窗口 后, LOGO 和窗口 的 关系不摆平, 不像4.0就一个窗口, 总能摆平。 我回去后 再想想 怎  详情 回复 发表于 2013-6-3 11:14
回复

使用道具 举报

5947#
 楼主| 发表于 2013-6-3 11:14:39 | 只看该作者
本帖最后由 mdyblog 于 2013-6-3 11:16 编辑
hhh333 发表于 2013-6-3 11:06
1、基本清楚了,是32位没较真而已,我把这个值设大一些,应该不会影响32位的吧。感觉64位系统确实要严格许 ...


1. 是的

2: 可在新窗口内,
ENVI @this.POS=::::3
TIME  -t:1  ,100,  ENVI @this.POS=::::3

支持多线程、多窗口 后, LOGO 和窗口 的 关系不摆平, 不像4.0就一个窗口, 总能摆平。
我回去后 再想想  怎么摆平。

WIN8 的LOGO技术 不同, 你写的是什么命令。

点评

我的脚本是与32位一样的,昨天在启动时想改一下临时文件,以前XPPE就是这样的,一个下拉列表框可以选盘,再带一下浏览按钮,对盘没把握就用浏览对话框来确定。开始发现不能下拉,再点按钮也没反应,往下启动后又看到  详情 回复 发表于 2013-6-3 11:28
回复

使用道具 举报

5948#
发表于 2013-6-3 11:28:44 | 只看该作者
mdyblog 发表于 2013-6-3 11:14
1. 是的

2: 可在新窗口内,


我的脚本是与32位一样的,昨天在启动时想改一下临时文件,以前XPPE就是这样的,一个下拉列表框可以选盘,旁边再带一个浏览按钮,对盘没把握就用浏览对话框来确定。开始发现不能下拉,再点按钮也没反应,往下启动后又看到了那个浏览窗口。
脚本就比较长了。我传一个PECMD.INI给你吧: PECMD.7z (5.53 KB, 下载次数: 1)

点评

浏览图片.WCS 可根据位置 侠士不同的鼠标光标,看下1图片,上1图片 在右半: 手型鼠标, 下1图片 在左半: 上型鼠标, 上1图片 http://pan.baidu.com/share/link?shareid=510729&uk=3962464512#tupian.png  详情 回复 发表于 2013-6-3 14:42
试试 下面的测试 代码 PECMD.WCS: LOGO logo.bmp WIN1 _SUB WIN1,W389H349,新窗口1, ITEM ITEM1,L38T102W80H30,开新窗口, CALL @WIN2 _END _SUB WIN2,W289H249,新窗口2, ITEM ITEM3,L138T102W6  详情 回复 发表于 2013-6-3 11:42
回复

使用道具 举报

5949#
 楼主| 发表于 2013-6-3 11:42:38 | 只看该作者
本帖最后由 mdyblog 于 2013-6-3 11:43 编辑
hhh333 发表于 2013-6-3 11:28
我的脚本是与32位一样的,昨天在启动时想改一下临时文件,以前XPPE就是这样的,一个下拉列表框可以选盘 ...


没什么特别的啊。
试试 下面的测试 代码  PECMD.WCS:

LOGO logo.bmp
WIN1
_SUB WIN1,W389H349,新窗口1,
    ITEM ITEM1,L38T102W80H30,开新窗口, CALL @WIN2
_END

_SUB WIN2,W289H249,新窗口2,
    ITEM ITEM3,L138T102W60H30,ITEM3, MESS  123
_END  
回复

使用道具 举报

5950#
 楼主| 发表于 2013-6-3 14:42:44 | 只看该作者
hhh333 发表于 2013-6-3 11:28
我的脚本是与32位一样的,昨天在启动时想改一下临时文件,以前XPPE就是这样的,一个下拉列表框可以选盘 ...

浏览图片.WCS  可根据位置 侠士不同的鼠标光标,看下1图片,上1图片
在右半: 手型鼠标, 下1图片
在左半: 上型鼠标, 上1图片
http://pan.baidu.com/share/link? ... 62464512#tupian.png

点评

启动时我截了个图,点那个临时文件的浏览按钮时窗口出现在下面,将前面的移开主看到了。  详情 回复 发表于 2013-6-3 18:01
回复

使用道具 举报

5951#
发表于 2013-6-3 16:53:20 | 只看该作者
新-12 Tab键在各按钮等切换 失效了

点评

-13 已修正。  详情 回复 发表于 2013-6-3 18:19
回复

使用道具 举报

5952#
发表于 2013-6-3 18:01:04 | 只看该作者
mdyblog 发表于 2013-6-3 14:42
浏览图片.WCS  可根据位置 侠士不同的鼠标光标,看下1图片,上1图片
在右半: 手型鼠标, 下1图片
在左 ...


启动时我截了个图,点那个临时文件的浏览按钮时窗口出现在下面,将前面的移开主看到了。我点它也不上来。

点评

这样说明白了, 我就清楚了。 改好了。 -14 测试: LOGO logo.bmp WIN1 _SUB WIN1,W289H149,新窗口1, ITEM ITEM1,L38T52W80H30,开新窗口, CALL SetPageDrv _END _SUB SetPageDrv BROW PageDrv,*,请  详情 回复 发表于 2013-6-3 18:38
回复

使用道具 举报

5953#
 楼主| 发表于 2013-6-3 18:19:08 | 只看该作者
diannao338 发表于 2013-6-3 16:53
新-12 Tab键在各按钮等切换 失效了

-13  已修正。

点评

Tab切换应该还有很大问题. 有些按钮切换不到 ,而且没有循环切换 RADI分组的单选按钮直接激活了 IPAD 切换进去后就切换不出来了,比如 只能在IP间切换了 而切换不到掩码那里去 默认没选中  详情 回复 发表于 2013-6-4 08:31
回复

使用道具 举报

5954#
 楼主| 发表于 2013-6-3 18:38:08 | 只看该作者
hhh333 发表于 2013-6-3 18:01
启动时我截了个图,点那个临时文件的浏览按钮时窗口出现在下面,将前面的移开主看到了。我点它也不上来 ...

这样说明白了, 我就清楚了。
改好了。 -14  
测试:

LOGO logo.bmp
WIN1
_SUB WIN1,W289H149,新窗口1,
    ITEM ITEM1,L38T52W80H30,开新窗口, CALL SetPageDrv
_END
_SUB SetPageDrv
        BROW PageDrv,*,请选择虚拟内存文件存放的分区,取消则自动选择D:分区
_END  
回复

使用道具 举报

5955#
发表于 2013-6-4 06:58:46 | 只看该作者
本帖最后由 ling3882688 于 2013-6-4 07:45 编辑

FORX 命令进行逆序搜索的时候,比如下面的命令:
FORX !\TOOLS\TOOLS.INI,MyIni,1,LINK %Desktop%\加载更多外置程序,PECMD.EXE,LOAD %MyIni%,Shell32.dll#158
相同的一条命令,64位pecmd测试正常,换成32位的PECMD,如果这个配置文件本身位于光盘上也正常,但是如果这个tools.ini和本条命令本身都位于硬盘分区下就不行,必须去掉!才可以成功,实在有些不解。

刚在正常系统下测试没有问题,我再检查下看看。

换了个新版本没有问题了。
回复

使用道具 举报

5956#
发表于 2013-6-4 08:31:03 | 只看该作者
本帖最后由 diannao338 于 2013-6-4 08:35 编辑
mdyblog 发表于 2013-6-3 18:19
-13  已修正。


Tab切换应该还有很大问题.
有些按钮切换不到 ,而且没有循环切换
RADI分组的单选按钮直接激活了
IPAD 切换进去后就切换不出来了,比如 只能在IP间切换了 而切换不到掩码那里去,且切换顺序也有问题
默认没选中

点评

你直接 给一段 反应问题的 最简单(无关的剃掉) 代码 。 我 一次 调好。  详情 回复 发表于 2013-6-4 08:34
回复

使用道具 举报

5957#
 楼主| 发表于 2013-6-4 08:34:41 | 只看该作者
本帖最后由 mdyblog 于 2013-6-4 08:36 编辑
diannao338 发表于 2013-6-4 08:31
Tab切换应该还有很大问题.
有些按钮切换不到 ,而且没有循环切换
RADI分组的单选按钮直接激活了


你直接 给一段 反应问题的  最简单(无关的剃掉)  代码 。
我 一次 调好。

循环切换 有吧。  B2.WCS:

WIN1
_SUB WIN1,W289H249,新窗口1,
    ITEM ITEM2,L72T21W60H30,ITEM2,
    ITEM ITEM3,L69T56W60H30,ITEM3,
    ITEM ITEM4,L95T95W60H30,ITEM4,
    RADI RADI6,L92T125W60H30,RADI6,,,
    CHEK CHEK7,L79T169W60H30,CHEK7,,
_END  

点评

发短消息给你了 exe是以前的  详情 回复 发表于 2013-6-4 08:44
回复

使用道具 举报

5958#
发表于 2013-6-4 08:44:25 | 只看该作者
mdyblog 发表于 2013-6-4 08:34
你直接 给一段 反应问题的  最简单(无关的剃掉)  代码 。
我 一次 调好。

发短消息给你了 exe是以前的

点评

试试 -15 别给我 这么大段的 代码, 看桌眼晕, 真没那么多时间看,抱歉!!! 有什么问题 就在下面的代码中加吧, 能反映 问题即可。 WIN1 _SUB WIN1,W289H311,新窗口1, ITEM ITEM2,L72T21W60H30,ITEM2  详情 回复 发表于 2013-6-4 11:11
回复

使用道具 举报

5959#
 楼主| 发表于 2013-6-4 11:11:49 | 只看该作者
本帖最后由 mdyblog 于 2013-6-4 12:15 编辑
diannao338 发表于 2013-6-4 08:44
发短消息给你了 exe是以前的


试试 -15
别给我 这么大段的  代码, 看桌眼晕, 真没那么多时间看,抱歉!!!
有什么问题 就在下面的代码中加吧, 能反映 问题即可。

WIN1
_SUB WIN1,W289H311,新窗口1,
    GROU GROU1,L34T5W194H95,GROU1,
    ITEM ITEM2,L72T21W60H30,ITEM2,
    ITEM ITEM3,L69T56W60H30,ITEM3,
    RADI RADI5,L95T133W66H23,RADI5,,0,1
    RADI RADI6,L94T158W63H22,RADI6,,0,1
    CHEK CHEK7,L78T176W60H30,CHEK7,,
    IPAD IPAD1,L78T214W100H24,192.168.1.10,
_END  

点评

明白,早上急着出门了 所以... 1.现在RADI还有点问题 你的测试代码 RADI选不中(Tab) CALL @Win1 _SUB Win1,W370H500 RADI Radio1,L20T60W130H20,AAA,,0,0 RADI Radio2,L20T85W140H20,BBB,,1,0 _END 方向键上下  详情 回复 发表于 2013-6-4 12:14
回复

使用道具 举报

5960#
发表于 2013-6-4 12:14:03 | 只看该作者
本帖最后由 diannao338 于 2013-6-4 12:29 编辑
mdyblog 发表于 2013-6-4 11:11
试试 -15
别给我 这么大段的  代码, 看桌眼晕, 真没那么多时间看,抱歉!!!
有什么问题 就在下面的 ...


明白,早上急着出门了 所以...
1.现在RADI还有点问题
你的测试代码 RADI选不中(Tab)
Win1
_SUB Win1,W370H500
RADI Radio1,L20T60W130H20,AAA,,0,0
RADI Radio2,L20T85W140H20,BBB,,1,0
_END
方向键上下不能在同一组切换

2. 默认没有选中第一个,
    第一次按Tab窗口焦点丢失<未激活状态>,(你的测试代码保存为wcs后)

点评

-16 TESTPE.WCS: WIN1 _SUB WIN1,W289H311,新窗口1 %PECMDVER%, GROU GROU1,L34T5W183H95,GROU1, ITEM ITEM2,L72T21W60H30,ITEM2, ITEM ITEM3,L72T57W60H30,ITEM3, RADI RADI5,L95T133W66H  详情 回复 发表于 2013-6-4 13:11
回复

使用道具 举报

5961#
发表于 2013-6-4 12:58:26 | 只看该作者
本帖最后由 diannao338 于 2013-6-4 13:43 编辑

还有问老大一个问题
复杂事情 窗口假死或死了
  1. envi name=新窗口
  2. WIN1
  3. _SUB WIN1,W289H311,%name%
  4.     ITEM ITEM2,L72T21W60H30,KILL,call doit
  5. _END

  6. _SUB doit
  7. kill \%name%

  8. envi n=0
  9. loop #%n%<3 ,
  10. {
  11. calc n=%n%+1
  12. wait 1000
  13. }
  14. mess aaa
  15. _END
复制代码
这样怎么关闭自身窗口执行下面事情?

加THREAD call doit
没有假死了
但是要执行完了才kill关闭

点评

-17 可以 正常关闭。 date a h 也正常了。  详情 回复 发表于 2013-6-4 14:31
的确, 一般不这么写。 不过 PECMD2012 这么写 也是能正常运行的。 没有假死的。 envi name=新窗口 WIN1 _SUB WIN1,W289H311,%name% ITEM ITEM2,L72T21W60H30,KILL,call doit _END _SUB doit kill  详情 回复 发表于 2013-6-4 13:20
回复

使用道具 举报

5962#
 楼主| 发表于 2013-6-4 13:11:57 | 只看该作者
diannao338 发表于 2013-6-4 12:14
明白,早上急着出门了 所以...
1.现在RADI还有点问题
你的测试代码 RADI选不中(Tab)

-16
TESTPE.WCS:

WIN1
_SUB WIN1,W289H311,新窗口1 %PECMDVER%,
    GROU GROU1,L34T5W183H95,GROU1,
    ITEM ITEM2,L72T21W60H30,ITEM2,
    ITEM ITEM3,L72T57W60H30,ITEM3,
    RADI RADI5,L95T133W66H23,RADI5,,0,0
    RADI RADI6,L94T158W63H22,RADI6,,1,0
    CHEK CHEK7,L78T176W60H30,CHEK7,,
    IPAD IPAD1,L78T214W100H24,192.168.1.10,
_END  

点评

Tab应该可以了 原先这样表示获取时 date a h mess %a% 现在怎么不行了?  详情 回复 发表于 2013-6-4 13:32
回复

使用道具 举报

5963#
 楼主| 发表于 2013-6-4 13:20:51 | 只看该作者
本帖最后由 mdyblog 于 2013-6-4 13:23 编辑
diannao338 发表于 2013-6-4 12:58
还有问老大一个问题
复杂事情 窗口假死或死了这样怎么关闭自身窗口执行下面事情?


的确, 一般不这么写。
不过 旧版(77-78) PECMD2012 这么写 也是能正常运行的。 没有假死的。  看来 这个还是加上的好。

envi name=新窗口
WIN1
_SUB WIN1,W289H311,%name%
    ITEM ITEM2,L72T21W60H30,KILL,call doit
_END
_SUB doit
    kill \%name%
    envi n=0
    loop #%n%<3 ,
    {
        calc n=%n%+1
        wait 1000
    }
    mess aaa
_END

MESS ---END---  

回复

使用道具 举报

5964#
发表于 2013-6-4 13:32:22 | 只看该作者
本帖最后由 diannao338 于 2013-6-4 13:35 编辑
mdyblog 发表于 2013-6-4 13:11
-16
TESTPE.WCS:


Tab应该可以了
原先这样表示获取时
date a h
mess %a%
现在怎么不行了?

试了下 就h=  有误,其他 s ms都正常
回复

使用道具 举报

5965#
 楼主| 发表于 2013-6-4 14:31:19 | 只看该作者
diannao338 发表于 2013-6-4 12:58
还有问老大一个问题
复杂事情 窗口假死或死了这样怎么关闭自身窗口执行下面事情?

-17  可以 正常关闭。
date a h 也正常了。

点评

那个 kill \ 上面的测试代码没问题 那个loop段改成其他操作还是'卡',比如 _SUB doit kill \%name% pcip ,,,,=本地连接 mess aaa _END 是否每个命令都要改啊? 量大就不用改了  详情 回复 发表于 2013-6-4 15:59
回复

使用道具 举报

5966#
发表于 2013-6-4 15:59:03 | 只看该作者
本帖最后由 diannao338 于 2013-6-4 16:01 编辑
mdyblog 发表于 2013-6-4 14:31
-17  可以 正常关闭。
date a h 也正常了。


那个 kill \   上面的测试代码没问题
那个loop段改成其他操作还是'卡',比如
_SUB doit
kill \%name%
pcip ,,,,=本地连接
mess aaa
_END

是否每个命令都要改啊? 量大就不用改了

THREAD call 貌似可以,我再试试

点评

不卡啊, -17. x10.wcs: envi name=新窗口 WIN1 _SUB WIN1,W289H311,%name% ITEM ITEM2,L72T21W60H30,KILL,call doit _END _SUB doit kill \%name% pcip ,,,,=本地连接 mess aaa _END  详情 回复 发表于 2013-6-4 16:44
回复

使用道具 举报

5967#
 楼主| 发表于 2013-6-4 16:44:39 | 只看该作者
本帖最后由 mdyblog 于 2013-6-4 16:54 编辑
diannao338 发表于 2013-6-4 15:59
那个 kill \   上面的测试代码没问题
那个loop段改成其他操作还是'卡',比如
_SUB doit


不卡啊, -17.  用 -18观感更好
x10.wcs:

envi name=新窗口
WIN1
_SUB WIN1,W289H311,%name%
    ITEM ITEM2,L72T21W60H30,KILL,call doit
_END
_SUB doit
    kill \%name%
    pcip ,,,,=本地连接
    mess aaa
_END
MESS ---END---  
回复

使用道具 举报

5968#
发表于 2013-6-4 23:09:19 | 只看该作者
本帖最后由 diannao338 于 2013-6-4 23:11 编辑

还发现一个诡异现象
下面由thread ,kill,calc 组成的,结果mess 那倒计时不管设多少都只有'1秒'的时间,而我去掉kill那行或去掉计时那些mess就正常了

  1. envi name=xpsp3测试
  2. Win1
  3. _SUB WIN1,W289H311,%name%
  4.     ITEM ITEM2,L72T21W60H30,确定,thread call doit
  5. _END
  6. _SUB doit
  7.     kill \%name%
  8. date h-1 h
  9. date t-1 min
  10. date s-1 s
  11. date m-1 ms
  12. calc _hs1=%h-1%*60*60+%t-1%*60+%s-1%.%m-1%
  13.     pcip *qkos ,,,,=无线网络连接,0
  14.     pcip *qkos ,,,,=无线网络连接,1
  15. date h-1 h
  16. date t-1 min
  17. date s-1 s
  18. date m-1 ms
  19. calc _hs2=%h-1%*60*60+%t-1%*60+%s-1%.%m-1%
  20. calc hs=%_hs2%-%_hs1% #2
  21. mess 完成\n耗时%hs%秒 @提示 #*5000
  22. _END
复制代码

点评

动态进度条+文本: CALL @WIN1 _SUB WIN1,W303H100,新窗口1, SET &p=20 PBAR PBAR1,L12T13W70H16,20 LABE -center -vcenter -trans -ncmd PBAR1_TEXT,L12T13W70H16,完成%&p%%%,,0x0000FF  详情 回复 发表于 2013-6-5 12:16
date _hs1 uptime pcip *qkos ,,,,=本地连接 2,0 pcip *qkos ,,,,=本地连接 2,1 date _hs2 uptime calc hs=%_hs2%-%_hs1% #2 mess 完成\n耗时%hs% ms @提示 #OK*5000  详情 回复 发表于 2013-6-5 01:07
回复

使用道具 举报

5969#
 楼主| 发表于 2013-6-5 01:07:03 | 只看该作者
本帖最后由 mdyblog 于 2013-6-5 12:39 编辑
diannao338 发表于 2013-6-4 23:09
还发现一个诡异现象
下面由thread ,kill,calc 组成的,结果mess 那倒计时不管设多少都只有'1秒'的时间,而我 ...

   date  _hs1 uptime
    pcip *qkos ,,,,=无线网络连接,0
    pcip *qkos ,,,,=无线网络连接,1
    date  _hs2 uptime
    calc hs=%_hs2%-%_hs1% #2
    mess 完成\n耗时%hs% ms @提示 #OK*5000


////////
读时间需要一次拿完, 不要分次拿在瓶醋。
/////////////////
哦, 你说的是 MESS 的超时 不起作用?
是的。 你用的是THREAD 而不是THREAD*, 这样主线程不等子线程的。
主线程的唯一窗口 KILL 后, 主线程 进入终结状态,从而整个程序 进入终结状态。于是MESS 匆忙退出
如果 MESS 超时 是5001毫秒,退出的更快,一瞬间。
用THREAD* 或直接 CALL doit

其实标准的做法是:先隐藏,干完活再KILL。这样清楚多了。

envi name=xpsp3测试
Win1
_SUB WIN1,W289H311,%name%
    ITEM ITEM2,L72T21W60H30,确定,call doit
_END
_SUB doit
    ENVI @this.visable=0     //先隐藏,
    date  _hs1 uptime
    pcip *qkos ,,,,=本地连接 2,0
    pcip *qkos ,,,,=本地连接 2,1
    date  _hs2 uptime
    calc hs=(%_hs2% - %_hs1%) / 1000 #3
    mess 完成\n耗时%hs%秒 @提示 #OK*5000
    kill \             //干完活再KILL
_END
  
回复

使用道具 举报

5970#
 楼主| 发表于 2013-6-5 12:16:32 | 只看该作者
动态进度条+文本:


CALL @WIN1
_SUB WIN1,W303H100,新窗口1,
    SET &p=20
    PBAR PBAR1,L12T13W70H16,20
    LABE -center -vcenter -trans -ncmd PBAR1_TEXT,L12T13W70H16,完成%&p%%%,,0x0000FF
    TIME  ,1000, CALL OnTimer1
_END
_SUB OnTimer1
    CALC #&p=%&p% + 5
    IFEX $%&p%>100, SET p=0
    envi @PBAR1_TEXT=完成%&p%%%   //文本
    envi @PBAR1=%&p%        //进度
    ENVI @this.InvalidateRect=12;13;82;33;0  //重绘   
_END  

点评

1、建议楼主,这个进度条文本可否加一个开关,让它常驻显示,不要一闪一闪的刷新呢? 2、子窗口如何操作父窗口的控件?平行窗口如何进行控件互相通信以及变量互访和共享?  详情 回复 发表于 2013-6-6 10:47
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2026-1-24 21:12

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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