无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: lxl1638
打印 上一主题 下一主题

[PECMD X86 & X64 V4.0.2011.0501版] WinPE命令解释程序 & WinPE登录命令。

    [复制链接]
1471#
 楼主| 发表于 2008-6-21 06:42:04 | 只看该作者
对工作目录处理问题,本人会完善它,但 WAIT 命令不好办,因为有时确实需要进行延时操作,也是使用 WAIT 命令的,如果用户不小心碰到键盘就中止延时可能会产生意思不同的事情。

暂时你还是用 WAIT 0 代替,WAIT 0 遇到按键就会中止。
回复

使用道具 举报

1472#
发表于 2008-6-21 06:56:32 | 只看该作者
原帖由 lxl1638 于 2008-6-21 06:42 AM 发表
对工作目录处理问题,本人会完善它,但 WAIT 命令不好办,因为有时确实需要进行延时操作,也是使用 WAIT 命令的,如果用户不小心碰到键盘就中止延时可能会产生意思不同的事情。

暂时你还是用 WAIT 0 代替,W ...


>>可否这样来解决:
1、WAIT 0------无限期等待直到有按键。
2、WAIT XXXX---------等待固定XXXX不管是否有按键。
3、WAIT -XXXX--------等待固定XXXX,但一旦有按键就往下执行。

以上分别对应wait后的参数=0,>0,<0的情况,解释起来也是很好实现的,原来的代码也不要改。增加的功能实际上就是以上2的功能加上1的功能。

[ 本帖最后由 hhh333 于 2008-6-21 07:10 AM 编辑 ]
回复

使用道具 举报

1473#
 楼主| 发表于 2008-6-21 08:00:08 | 只看该作者
原帖由 hhh333 于 2008-6-21 06:56 AM 发表


>>可否这样来解决:
1、WAIT 0------无限期等待直到有按键。
2、WAIT XXXX---------等待固定XXXX不管是否有按键。
3、WAIT -XXXX--------等待固定XXXX,但一旦有按键就往下执行。

以上分别对应wait后 ...


好吧,就按你的意思去做,加入前导符"-",也兼容以前的语法。
回复

使用道具 举报

1474#
发表于 2008-6-21 08:13:36 | 只看该作者
我在前述的帖子中说到:“新的pecmd似乎造成PUSHD %~dp0失效,即不能改变当前目录到CMD所在目录。”
九兄看了吗?解决了吗?这可是个大问题,会造成很多文件运行失败!!!极待解决!!!我一直在等啊…………
回复

使用道具 举报

1475#
 楼主| 发表于 2008-6-21 08:41:47 | 只看该作者
原帖由 hhh333 于 2008-6-21 08:13 AM 发表
我在前述的帖子中说到:“新的pecmd似乎造成PUSHD %~dp0失效,即不能改变当前目录到CMD所在目录。”
九兄看了吗?解决了吗?这可是个大问题,会造成很多文件运行失败!!!极待解决!!!我一直在等啊…………


你测试一下这个,如果没有前面提到的两个问题(当前工作目录和WAIT),本人再看看有没有可精简的代码,就公布到1楼。

也请台湾兄弟测试一下。

PECMD-V3.2.621.255测试.RAR

85.88 KB, 下载次数: 44, 下载积分: 无忧币 -2

回复

使用道具 举报

1476#
发表于 2008-6-21 09:32:42 | 只看该作者
用了3.2.621.255测试,不能登录了,其他任何版本无此问题
回复

使用道具 举报

1477#
发表于 2008-6-21 10:18:38 | 只看该作者
今天趕者出門...所以只簡單測試一下而已...

老九的新版本簡單測試後...應該是沒有之前說的問題了...測試版ISO都沒做任何更改下...已可以正常運作...

至於其他的新功能或是原本的舊功能...我星期天晚上再來做詳細測試...感謝老九...





[ 本帖最后由 jzdai0903 于 2008-6-21 10:20 AM 编辑 ]
回复

使用道具 举报

1478#
发表于 2008-6-21 11:09:55 | 只看该作者
原帖由 lxl1638 于 2008-6-21 08:41 AM 发表


你测试一下这个,如果没有前面提到的两个问题(当前工作目录和WAIT),本人再看看有没有可精简的代码,就公布到1楼。

也请台湾兄弟测试一下。


>>>测试了,
1、出现了“注册类或创建窗口失败”不能登录,因此调用其他CMD异常的情况没办法测试。
2、但按键可以正常工作了:我的程序是启动时3秒内按Ctrl,则调出模式选择窗口,用WAIT -3000,轻轻一按Ctrl键模式选择窗口就跳出来了,比以前方便多了,以前总让人觉得按键不灵!!!
回复

使用道具 举报

1479#
发表于 2008-6-21 11:42:32 | 只看该作者
原帖由 jzdai0903 于 2008-6-21 10:18 AM 发表
今天趕者出門...所以只簡單測試一下而已...

老九的新版本簡單測試後...應該是沒有之前說的問題了...測試版ISO都沒做任何更改下...已可以正常運作...

至於其他的新功能或是原本的舊功能...我星期天晚上再來 ...

这个PE很好,能提供下载么?
回复

使用道具 举报

1480#
发表于 2008-6-21 11:45:42 | 只看该作者
PECMD-V3.2.621.255
FDRV AllDrive= 在pe2.0已经正常取得所有盘符
pecmd.exe也可以放在c:\windows\system32\在任意目录load
非常感谢老九做的努力
回复

使用道具 举报

1481#
发表于 2008-6-21 12:58:20 | 只看该作者
//取得%YESNO%
MESS TEST@TEST #YN *10000 $N

//这行按是%YESNO%=YSE , 按否%YESNO%=NO 确认回报没错
IFEX $YESNO=YES,MESS %YESNO% @TEST #OK,,0!MESS %YESNO% @TEST #OK,,0

//可是用了这行,不管我选是或选否,都只会跳出MESS YES @TEST #OK,,0
//不管怎试!MESS NO @TEST #OK,,0始终都不被执行
//所以这一版IFEX 变没作用了?
IFEX $YESNO=YES,MESS YES @TEST #OK,,0!MESS NO @TEST #OK,,0
回复

使用道具 举报

1482#
 楼主| 发表于 2008-6-21 13:08:40 | 只看该作者
3.2.621.255版更新:
1、修正的 PECMD.EXE 载入多个 INI 文件时引起的当前工作目录出现的混乱;
2、补充了 WAIT 命令的功能;
3、更正了说明中的个别错字,同时补充了 WAIT 命令的说明;
4、附件内有3个文件:
PECMD.EXE              PECMD 的主程式
COMPRESS.EXE        用于 PECMD.EXE 语言本地化的帮助说明压缩工具
未命名.PNG              PECMD.EXE 帮助说明在资源中的位置图示

5、COMPRESS.EXE 不能用来修改简体中文系统中的帮助说明,只能用来修改非简体中文系统中的说明,
     修改时先用 COMPRESS.EXE 对.TXT说明文件压缩,再将压缩后的文件小心替换资源中的数据即可。

[ 本帖最后由 lxl1638 于 2008-6-21 01:10 PM 编辑 ]
回复

使用道具 举报

1483#
发表于 2008-6-21 14:40:08 | 只看该作者
原帖由 lwf8888 于 2008-6-20 06:09 PM 发表
注释现在的//和'都是行的注释。可否增减块的注释。
格式:
/*   文字1
文字2
*/
要求:/*和*/必须在开头。
处理:和_SUB/_END一样,两者之间的任何内容都不处理。修改起来应该非常方便。



期待。。。
回复

使用道具 举报

1484#
发表于 2008-6-21 16:34:47 | 只看该作者
原帖由 nasai 于 2008-6-21 12:58 PM 发表
//取得%YESNO%
MESS TEST@TEST #YN *10000 $N

//这行按是%YESNO%=YSE , 按否%YESNO%=NO 确认回报没错
IFEX $YESNO=YES,MESS %YESNO% @TEST #OK,,0!MESS %YESNO% @TEST #OK,,0

//可是用了这行,不管我选是 ...




V2.9.1更新:
3、修改了 IFEX 命令中带前导符 $ 的功能,IFEX $ 用于数值变量判断,FIND $ 用于环境变量判断;

V3.0.1更新:
1、修正了 FIND、IFEX 命令在某些情况下可能出现的BUG;
     FIND、IFEX命令分别用于比较环境变量和数值变量时,一律用前导"$"+带"%"的变量表示,如:
     比较字符变量:FIND $%List2%=%W800H600B32F75%,DISP W800H600B32F75
     比较数值变量:IFEX $%ErrorCount%<5,ENVI @Label1=%ErrorCount%!CALL ShutSystem


其實用新版PECMD來說...下面這樣是錯誤的...只是我也不知道為啥結果會是你要的...

IFEX $YESNO=YES,MESS %YESNO% @TEST #OK,,0!MESS %YESNO% @TEST #OK,,0

應該要這樣才對...

FIND $%YESNO%=YES,MESS %YESNO% @TEST #OK,,0!MESS %YESNO% @TEST #OK,,0

另外你改不出來的那個要這樣才是對的...

MESS TEST@TEST #YN *10000 $N
FIND $%YESNO%=YES,MESS YES @TEST #OK,,0!MESS NO @TEST #OK,,0

你試試看吧...

评分

参与人数 1无忧币 +10 收起 理由
nasai + 10 感謝幫忙 已經全部正常了

查看全部评分

回复

使用道具 举报

1485#
 楼主| 发表于 2008-6-21 17:04:23 | 只看该作者
原帖由 jzdai0903 于 2008-6-21 10:18 AM 发表
今天趕者出門...所以只簡單測試一下而已...

老九的新版本簡單測試後...應該是沒有之前說的問題了...測試版ISO都沒做任何更改下...已可以正常運作...

至於其他的新功能或是原本的舊功能...我星期天晚上再來 ...



你这种载入有 GUI 界面 INI 的方法要改,前面说过 LOGO 是一个全屏的最顶层窗口,
通过 CMD.EXE 启动 PECMD.EXE 来 LOAD INI 产生在窗口会被 LOGO 窗口复盖。

你可以试试,点一下 CMD.EXE 弹出的窗口外面,LOGO 马上复盖所有的窗口了。

[ 本帖最后由 lxl1638 于 2008-6-21 05:07 PM 编辑 ]

未命名.JPG (14.74 KB, 下载次数: 127)

未命名.JPG
回复

使用道具 举报

1486#
 楼主| 发表于 2008-6-21 17:35:37 | 只看该作者
原帖由 lwf8888 于 2008-6-21 02:40 PM 发表

期待。。。



支持块注释,技术上不难。
但相当于 PECMD.EXE 增加了两条命令(遇到 /* 后面的跳过,直至到 */ 后面之后才执行)。
命令多了,循环检测命令的关键词耗时也长,执行效率也低。

目前,PECMD.EXE 的命令 ID 顺序是以命令关键词升序排列的,有些常用命令(如 TEXT)
排得很后,基本上要结束一轮循环才检测到 TEXT 命令,使得TEXT执行效率比以前的低了很多。
如果有可能,以后优化命令排列顺序(按使用率降序排列),再补充这样的功能。

初版的 PECMD.EXE 只有20多条命令,现在有70多条,平均一轮循环检测命令的时间相当于以前的3倍了。

[ 本帖最后由 lxl1638 于 2008-6-21 05:37 PM 编辑 ]
回复

使用道具 举报

1487#
发表于 2008-6-21 20:26:23 | 只看该作者
原帖由 lxl1638 于 2008-6-21 05:35 PM 发表



支持块注释,技术上不难。
但相当于 PECMD.EXE 增加了两条命令(遇到 /* 后面的跳过,直至到 */ 后面之后才执行)。
命令多了,循环检测命令的关键词耗时也长,执行效率也低。

目前,PECMD.EXE 的命令 ...



>>>块注释不要搞了,又不是C语言,我觉得后面增加的一些命令都没有太大的必要,PECMD必须精练。同时也要适当考虑兼容性,这个东西是解释执行的,又不是编译的,象注释符“`”和\\是完全一样的,只用一个就可以了,新增的一些命令我还没仔细试,既然原先没有这些命令时照样启动,我想增加的命令的作用和效率要仔细评估。
回复

使用道具 举报

1488#
发表于 2008-6-21 20:27:00 | 只看该作者
命令多了,应用哈希查表吧。
回复

使用道具 举报

1489#
发表于 2008-6-21 21:45:56 | 只看该作者
你这种载入有 GUI 界面 INI 的方法要改,前面说过 LOGO 是一个全屏的最顶层窗口,
通过 CMD.EXE 启动 PECMD.EXE 来 LOAD INI 产生在窗口会被 LOGO 窗口复盖。

你可以试试,点一下 CMD.EXE 弹出的窗口外面,LOGO 马上复盖所有的窗口了。



這個窗口是正常INI文件內LOAD INI的...自定義那個才是CMD內使用PECMD.EXE LOAD INI產生的...

今天試了一下...點到窗口外的區域LOGO圖就會把自定義窗口蓋掉了...不過案ALT+TAB還是可以選到...

不過為了避免會有這問題...我會把他改成一樣利用INI內使用LOAD INI的方式使用呢...

感謝老九...
回复

使用道具 举报

1490#
发表于 2008-6-21 23:47:38 | 只看该作者
附上3.2.621.255版 繁中版PECMD

PECMD.rar (85.8 KB, 下载次数: 35)

[ 本帖最后由 jzdai0903 于 2008-6-21 11:49 PM 编辑 ]
回复

使用道具 举报

1491#
 楼主| 发表于 2008-6-22 09:44:55 | 只看该作者
原帖由 jzdai0903 于 2008-6-21 11:47 PM 发表
附上3.2.621.255版 繁中版PECMD

42492


转换得不是很好,本人也试了一个,也不好,但对齐问题基本解决。
你如果有空,接着做下去:

1、有几个表格字,本人找不到,你补充上去;





2、修改对话框的字体为"细明体"和对话框的大小。





3、或者看看  adatsui 做的语言本地化,做得很好。

[ 本帖最后由 lxl1638 于 2008-6-22 12:15 PM 编辑 ]

PECMD_HELP.rar

19.29 KB, 下载次数: 92, 下载积分: 无忧币 -2

回复

使用道具 举报

1492#
发表于 2008-6-22 13:26:39 | 只看该作者
PECMD.EXE 3.2.621版问题反馈:

基于911改造的PE内核中使用3.1.528版PECMD.EXE ,启动时一切正常。
由于不能很好地支持弹窗,启动后将3.1.528版PECMD.EXE 换成3.1.618版或3.1621版PECMD.EXE
测试弹窗功能正常。
于是将内核换成PECMD.EXE 3.2.621版或PECMD.EXE 3.2.618版再测试以现:
     启动到桌面时只有鼠标可动,无任务栏,桌面图标,键入Ctrl+Alt+Delete也无反应。

不知是不是3.2版的PECMD.EXE的BUG?
回复

使用道具 举报

1493#
 楼主| 发表于 2008-6-22 13:31:09 | 只看该作者
原帖由 yulongjin 于 2008-6-22 01:26 PM 发表
PECMD.EXE 3.2.621版问题反馈:

基于911改造的PE内核中使用3.1.528版PECMD.EXE ,启动时一切正常。
由于不能很好地支持弹窗,启动后将3.1.528版PECMD.EXE 换成3.1.618版或3.1621版PECMD.EXE
测试弹窗功能正 ...


3.1.615.172版更新:
1、增加了一条 EXIT 命令,用于退出 CALL 命令调用的子过程,或退出 LOAD 命令调用的文件过程;
2、取消了定义窗口控件的命令必须位于命令行开头的限制。
3、修正了退出窗口后不能载入命令文件的BUG;
4、3.1.613.172修正版,去除了 Release 版 FORX 命令留下的调试代码;
5、修改了 FIND、IFEX 对命令的解释方式,这两条命令不再解释命令群,执行更合理。

6、要在 FIND、IFEX 使用命令群也可以,格式是:


FIND <条件>,TEAM 命令1|命令2|命令3.... !TEAM 命令a|命令b|命令c....
IFEX <条件>,TEAM 命令1|命令2|命令3.... !TEAM 命令a|命令b|命令c....


这样在 FIND、IFEX 命令内就不会被分隔符"|"分割。即不再支持
FIND <条件>,命令1|命令2|命令3.... !命令a|命令b|命令c....
IFEX <条件>,命令1|命令2|命令3.... !命令a|命令b|命令c....

但仍支持:
FIND <条件>,命令1!命令a
IFEX <条件>,命令1!命令a




[ 本帖最后由 lxl1638 于 2008-6-22 01:32 PM 编辑 ]
回复

使用道具 举报

1494#
发表于 2008-6-22 13:45:44 | 只看该作者
老九說的轉換不太好是指哪部分呢...

下面這張圖是在我電腦上執行的結果...



回复

使用道具 举报

1495#
 楼主| 发表于 2008-6-22 15:49:54 | 只看该作者
晕,原来那么好的!
但本人用你的PE启动后看到的是这样.................或者是你的PE的问题?

[ 本帖最后由 lxl1638 于 2008-6-22 03:54 PM 编辑 ]

未命名.PNG (43.53 KB, 下载次数: 119)

未命名.PNG
回复

使用道具 举报

1496#
发表于 2008-6-22 17:44:47 | 只看该作者
呵呵...

在繁體XPE系統裡面要用這個...

PECMD--XPE下使用版.rar (85.91 KB, 下载次数: 29)

正常繁體XP系統內看說明要用這個...

PECMD--XP下使用版.rar (85.9 KB, 下载次数: 34)

[ 本帖最后由 jzdai0903 于 2008-6-22 05:47 PM 编辑 ]
回复

使用道具 举报

1497#
发表于 2008-6-22 17:49:38 | 只看该作者
事实上PECMD帮助放PE里没任何用处,为什么不把帮助信息分离出来,单独做成一个CHM?
压缩帮助资源真能减少内存占用?假象吧,运行时还不得解压?这不压缩的占一份,解压又占一份,不是反而多占内存了?

[ 本帖最后由 dalas 于 2008-6-22 05:53 PM 编辑 ]
回复

使用道具 举报

1498#
发表于 2008-6-22 17:50:02 | 只看该作者
冷清了一段时间,又可以折腾了。
回复

使用道具 举报

1499#
 楼主| 发表于 2008-6-22 17:51:55 | 只看该作者
但很多PE不支持CHM,内置也不是坏事,这份说明有114K左右,压缩才24K,仅大24K而已。
做成其它格式的文档会更太,CHM会有200K左右,纯TXT也是114K。

[ 本帖最后由 lxl1638 于 2008-6-22 05:54 PM 编辑 ]
回复

使用道具 举报

1500#
发表于 2008-6-22 17:57:16 | 只看该作者
原帖由 lxl1638 于 2008-6-22 05:51 PM 发表
但很多PE不支持CMH,内置也不是坏事,压缩后24K左右,仅大24K而已。


帮助放PE中没任何用处,帮助信息是给制作PE的人看的,制作成品的PE不需要PECMD的帮助,在制作PE的过程中,如果需要看PECMD帮助,谁会特意跑PE中看?XP下看就行了。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-6-29 09:23

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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