无忧启动论坛

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

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

    [复制链接]
2941#
发表于 2012-5-20 22:37:44 | 只看该作者
原帖由 2012abc19701 于 2012-5-20 20:50 发表




MEMO/EDIT  只读状态下 “自动换行”什么意思?

Q:我在练手中曾经想让MEMO/EDIT  都是只读状态,这样不会修改和
   编辑当中的内容,但设为只读之后,可以支持\n换行,但是当每行
   都超出控件边框的范围就不会自动换行,MEMO设为0x20可编辑属性
   时可以,EDIT没有看见有这样的选项和参数,也没有试出来。



1、“自动刷新到最新的信息行”  什么意思?
Q:我就是新设置了一行返回信息,但是,EDIT中显示的还是以前的信
   息,比如:ENVI @edit1=%edit1%\n我是最后一行 这样,控件是停
   留在第一行的信息处,无法让它直接显示最后一行“我是最后一行”

   以及之上的内容,也就是从最后一行开始往上的信息,但是将光标
   停留在最后一行上,大致是这个意思。

“MEMO增加依据功能变量实现跳进显示指定行” 可以。


“和滚屏效果”具体怎么样(H ...


Q:这个就是设置控件在鼠标点击了中键后,自动按鼠标指向,上下自
   动翻页的功能。

*谢谢楼主其他的详细解释,我在测试看看效果。
回复

使用道具 举报

2942#
 楼主| 发表于 2012-5-20 23:37:00 | 只看该作者
原帖由 988668 于 2012-5-20 22:37 发表


Q:这个就是设置控件在鼠标点击了中键后,自动按鼠标指向,上下自
   动翻页的功能。

*谢谢楼主其他的详细解释,我在测试看看效果。


"这个就是设置控件在鼠标点击了中键后,自动按鼠标指向,上下自
   动翻页的功能。"
这个有啊。
你在MEMO或多行EDIT|
方许多行内容,就可看到。


MEMO设为0x20  对应  EDIT|- ..... 0x24  最后设为0x24
控件选项值可以按绝对值相加。



“自动刷新到最新的信息行”  可以做到。
但是,是否都这样,还是有选择:有的显示上面,有的显示最后面?

[ 本帖最后由 2012abc19701 于 2012-5-20 23:46 编辑 ]
回复

使用道具 举报

2943#
 楼主| 发表于 2012-5-21 06:57:00 | 只看该作者
原帖由 2012abc19701 于 2012-5-20 20:01 发表
Q1:文件名称会被截断或更改
A:
出在FILE命令调用的API。 WINDOWS  API 的古怪之处。

经实验,更改的是那些没带目录名且带通配符。
可以前面加当前目录“.\”
  FILE  *.txt->帮助与实例\
改为 ...




Q1:文件名称会被截断或更改
还可以文件版FORX循环,自动将通配符转为实际文件名,传给FILE
LOGS  x.log
FORX *.txt,&fileslto,0,FILE %&fileslto% ->FOLDER\
LOGS
看看 x.log 就清楚了。
回复

使用道具 举报

2944#
发表于 2012-5-21 11:12:31 | 只看该作者
原帖由 2012abc19701 于 2012-5-21 06:57 发表




Q1:文件名称会被截断或更改
还可以文件版FORX循环,自动将通配符转为实际文件名,传给FILE
LOGS  x.log
FORX *.txt,&fileslto,0,FILE %&fileslto% ->FOLDER\
LOGS
看看 x.log 就清楚了。


-------------------------------
很认真,也很详细的测试了,测试脚本和报告如下(用测试包的文件测试的):
TEAM ENVI ltf01=Notepad2.ini|ENVI ltf02=帮助说明.ini|ENVI ltf03=配置.ini|ENVI ltf04=启动器.ini|ENVI ltf05=PECMD.TXT|ENVI ltf06=HELP.TXT|ENVI ltf07=QMENU.ini|ENVI ltf08=PECEdit菜单.ini
//CMPS 测试
NAME N=%ltf02%
CMPS -f -m %ltf02% %N%.wcz
FILE %ltf02% ->%ltf02%bak  //将原文件改名:帮助说明 (2).ini
CMPS -u %N%.wcz %N%        //只生成没“.ini”后缀的“帮助说明”
MESS **:%N% @ok *0 $ok
IFEX 帮助与实例,!MDIR 帮助与实例
IFEX 源码资源,!MDIR 源码资源
IFEX HELP,!MDIR HELP
IFEX 帮助手册,!MDIR 帮助手册
LOGS  x.log  //开始日志
FILE l8.txt
FORX %CurDIR%\*.wcs,fileslto,0,WRIT l8.txt,$+0,%fileslto% //正常搜索,长名正常写入
MESS **:%fileslto% @ok *0 $ok
WRIT l8.txt,+0,---分界线---
FORX *.txt,fileslto,0,WRIT l8.txt,$+0,%fileslto% //正常搜索,长名正常写入
MESS **:%fileslto% @ok *0 $ok
WRIT l8.txt,+0,---分界线---
FORX .\*.txt,fileslto,0,FILE %fileslto% ->帮助手册\  //能移动文件,但同样修改长名
MESS 移动文件:%fileslto% @ok *0 $ok
IFEX %CurDIR%\帮助手册\l8.txt,FILE 帮助手册\l8.txt ->%CurDIR%\
FORX * %CurDIR%\*.wcs %CurDIR%\*.ini %CurDIR%\*.txt,fileslto,WRIT l8.txt,$+0,%fileslto% //只有通配符,没辙
MESS **:%fileslto% @ok *0 $ok
WRIT l8.txt,+0,---分界线---
WAIT 1000
//以下用法不管是加%CurDIR%\或“.\”都不起作用,请测试
FORX *  %ltf01% %ltf02% %ltf03% %ltf04% %ltf05% %ltf06% %ltf07% %ltf08% .\*.txt,fileslto,FILE %fileslto% ->帮助手册\
FORX *  .\*.wcs *.wcz  %CurDIR%\*.ini *.bmp *.png *.jpg,fileslto,FILE %fileslto% ->帮助与实例\
FORX *  *.rar *.7z *.zip,fileslto,FILE %fileslto% ->源码资源\
FORX *  *.doc *.pdf,fileslto,FILE %fileslto% ->HELP\
LOGS
日志如下:
[LOGS x.log]        操作成功完成。
[FILE l8.txt]        执行错误:00000402
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\分区演示.说明框2.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\分页模拟演示.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\单击停止定时器.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\压缩测试.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\可以调用内部命令的内部脚本示例.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\可以调用内部命令的内部脚本示例2.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\可变大小.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\固定窗口.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\恢复MBROS_MBR.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\格式化分区信息.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\物理磁盘列表.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\磁盘分区信息.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\磁盘符列表.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\移动大小窗口和控件.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\空格对齐.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\空闲休眠.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\空闲关机.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\自动调整大小-可变大小.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\退出嵌套的函数.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\隐藏分区的算法.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\默认颜色内置脚本.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\资源重编译辅助工.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\getmbr.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\Gui进度测试.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\import1.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\LABE透明文本.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\LIST_PAR.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\LIST_TES.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\LIST_UDI.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\MBROS映射.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\MSG.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\ORDERUSB.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\Pecmd数组2.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\Pecmd数组3.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\Pecmd数组.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\PETOOLS_.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\SeTemp.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\SHEL切换到E.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\SHEL切换到M.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\SHOW_PAR.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\SWIN.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TABS属性页表.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TEST1.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TEST2imp.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TEST_FIL.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\test_rea.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TEST_消息参.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TEST_消息映.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TestDrvI.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\TESTMBR.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\WCS2HTML.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\WIM查询.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\WIN8任务栏.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\WM_消息.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\分区演示.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\0体积截图.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\ANSI-HEX.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\CallAllD.WCS]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\GET_DRV_.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\GET_NETC.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\GETALLMB.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\资源重编译辅助工具.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\分区演示.说明框.wcs]        操作成功完成。
[FORX W:\WIMSYS\AUTO\P测试包.WIM9\*.wcs,fileslto,0,WRIT l8.txt,$+0,%fileslto%]        操作成功完成。
[MESS **:W:\WIMSYS\AUTO\P测试包.WIM9\分区演示.说明框.wcs @ok *0 $ok]        操作成功完成。
[WRIT l8.txt,+0,---分界线---]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\help.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\Notepad2.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\PECMD.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\PECMD命令文.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\PECMD命令文件格式说明.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\PECMD命令文件格式说明333.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\WORDFILE.TXT]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\服务对话框2.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\相同名称但少了个字或其它的就是杯盖了.txt]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\l8.txt]        操作成功完成。
[FORX *.txt,fileslto,0,WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\分区演示.说明框.wcs]        操作成功完成。
[MESS **:W:\WIMSYS\AUTO\P测试包.WIM9\l8.txt @ok *0 $ok]        操作成功完成。
[WRIT l8.txt,+0,---分界线---]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\help.txt ->帮助手册\]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\Notepad2.txt ->帮助手册\]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\PECMD.txt ->帮助手册\]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\PECMD命令文.txt ->帮助手册\]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\PECMD命令文件格式说明.txt ->帮助手册\]        操作已被用户取消。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\PECMD命令文件格式说明333.txt ->帮助手册\]        操作已被用户取消。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\WORDFILE.TXT ->帮助手册\]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\服务对话框2.txt ->帮助手册\]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\相同名称但少了个字或其它的就是杯盖了.txt ->帮助手册\]        操作成功完成。
[FILE W:\WIMSYS\AUTO\P测试包.WIM9\l8.txt ->帮助手册\]        操作成功完成。
[FORX .\*.txt,fileslto,0,FILE W:\WIMSYS\AUTO\P测试包.WIM9\l8.txt ->帮助手册\]        操作成功完成。
[MESS 移动文件:W:\WIMSYS\AUTO\P测试包.WIM9\l8.txt @ok *0 $ok]        操作成功完成。
[FILE 帮助手册\l8.txt ->W:\WIMSYS\AUTO\P测试包.WIM9\]        操作成功完成。
[IFEX W:\WIMSYS\AUTO\P测试包.WIM9\帮助手册\l8.txt,FILE 帮助手册\l8.txt ->W:\WIMSYS\AUTO\P测试包.WIM9\]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\*.wcs]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\*.ini]        操作成功完成。
[WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\*.txt]        操作成功完成。
[FORX * W:\WIMSYS\AUTO\P测试包.WIM9\*.wcs W:\WIMSYS\AUTO\P测试包.WIM9\*.ini W:\WIMSYS\AUTO\P测试包.WIM9\*.txt,fileslto,WRIT l8.txt,$+0,W:\WIMSYS\AUTO\P测试包.WIM9\l8.txt]        操作成功完成。
[MESS **:W:\WIMSYS\AUTO\P测试包.WIM9\*.txt @ok *0 $ok]        操作成功完成。
[WRIT l8.txt,+0,---分界线---]        操作成功完成。
[WAIT 1000]        操作成功完成。
[FILE Notepad2.ini ->帮助手册\]        操作成功完成。
[FILE 帮助说明.ini ->帮助手册\]        执行错误:00000402
[FILE 配置.ini ->帮助手册\]        执行错误:00000402
[FILE 启动器.ini ->帮助手册\]        操作成功完成。
[FILE PECMD.TXT ->帮助手册\]        执行错误:00000402
[FILE HELP.TXT ->帮助手册\]        执行错误:00000402
[FILE QMENU.ini ->帮助手册\]        执行错误:00000402
[FILE PECEdit菜单.ini ->帮助手册\]        操作成功完成。
[FILE .\*.txt ->帮助手册\]        操作已被用户取消。
[FORX *  Notepad2.ini 帮助说明.ini 配置.ini 启动器.ini PECMD.TXT HELP.TXT QMENU.ini PECEdit菜单.ini .\*.txt,fileslto,FILE W:\WIMSYS\AUTO\P测试包.WIM9\*.txt ->帮助手册\]        操作成功完成。
[FILE *.wcs ->帮助与实例\]        操作已被用户取消。
[FILE *.wcz ->帮助与实例\]        操作成功完成。
[FILE *.ini ->帮助与实例\]        操作已被用户取消。
[FILE *.bmp ->帮助与实例\]        执行错误:00000402
[FILE *.png ->帮助与实例\]        执行错误:00000402
[FILE *.jpg ->帮助与实例\]        执行错误:00000402
[FORX *  *.wcs *.wcz *.ini *.bmp *.png *.jpg,fileslto,FILE .\*.txt ->帮助与实例\]        操作成功完成。
[FILE *.rar ->源码资源\]        执行错误:00000402
[FILE *.7z ->源码资源\]        执行错误:00000402
[FILE *.zip ->源码资源\]        执行错误:00000402
[FORX *  *.rar *.7z *.zip,fileslto,FILE *.jpg ->源码资源\]        操作成功完成。
[FILE *.doc ->HELP\]        执行错误:00000402
[FILE *.pdf ->HELP\]        执行错误:00000402
[FORX *  *.doc *.pdf,fileslto,FILE *.zip ->HELP\]        操作成功完成。
[LOGS ]        操作成功完成。

**最后就是发现问题依旧,说明在脚本代码后的注释
回复

使用道具 举报

2945#
 楼主| 发表于 2012-5-21 14:07:08 | 只看该作者

PECMD2012.1.69.67_win32.多窗口多线程.sfx.zip

PECMD2012.1.69.67_win32.多窗口多线程.sfx.zip:

1. 原来LABE 是支持消息的。

只是,为了兼容4.0, 在没有命令是关闭了消息。
有命令时,自动开启消息
※关于消息,默认没有消息。有命令时激活消息,没有命令但需要消息,可以用*放到命令域。激活消息
  时被它挡住的控件不能操作。
   
HELP  LABE
注意,如果定义了一个很大的LABE,挡住了其它控件,并且激活了消息, 就会发现,能看见控件,但控件没反应。

正是这个原因,没有命令时,自动关闭消息。


2. FILE 文件名 问题
本版 内部自动加上路径。可以直接
『FILE  *.txt->HELP\』
另外本版支持重命名“>>”。等价与 DOS的 REN

另外本版支持多目标。

HELP  FILE



3.自动到 EDIT、MEMO最后。
选项0x40 激活之。
HELP  EDIT
HELP  MEMO


4.  EDIT、MEMO  直接跳到显示某行。
ENVI @编辑可名.LINE=行号
行号从1开始
HELP  EDIT
HELP  MEMO

5.  CMD命令行特殊字符: |>&^
◎如果在命令行中使用,且参数中带有">"或"|"或"&"或"^",则命令后的参数必须用引号包围,否则将会被认为
是重定向或管道操作符等。或在(这些字符)前面加个^。本程序支持引号参数解析。


HELP  CMD

[ 本帖最后由 2012abc19701 于 2012-5-21 14:11 编辑 ]
回复

使用道具 举报

2946#
发表于 2012-5-21 14:48:58 | 只看该作者
测试69.67的MENU命令

1.放入SUB内
_SUB MySUB,L200T200W200H200
MENU M1,MenuName,***
_END
MySUB
执行:窗口正常出来了,托盘图标菜单也正常,但点击菜单则崩溃。

2.放到SUB外
MENU M1,MenuName,***
执行:没有出现托盘菜单,直接崩溃。

[ 本帖最后由 wbz2cdma 于 2012-5-21 14:52 编辑 ]
回复

使用道具 举报

2947#
发表于 2012-5-21 17:47:35 | 只看该作者
原帖由 2012abc19701 于 2012-5-21 14:07 发表
PECMD2012.1.69.67_win32.多窗口多线程.sfx.zip:

1. 原来LABE 是支持消息的。

只是,为了兼容4.0, 在没有命令是关闭了消息。
有命令时,自动开启消息
※关于消息,默认没有消息。有命令时激活消息,没 ...


----------------------------
呵呵,终于完美解决了以前与4.0一直纠结不清的问题了,测试一切正常了,
兴奋哦 (*^__^*) 嘻嘻……
再反应一下编辑器的问题,1.0.18的,请看图:

具体反应在新建或修改窗口,放上/移动控件或粘贴代码的时候,就会出现了。
回复

使用道具 举报

2948#
 楼主| 发表于 2012-5-21 17:50:14 | 只看该作者

回复 #3026 wbz2cdma 的帖子

下载  PECMD2012.1.69.67_win32.多窗口多线程.sfx.zip【3】
回复

使用道具 举报

2949#
 楼主| 发表于 2012-5-21 17:56:06 | 只看该作者

回复 #3027 988668 的帖子

为了优化, 为了CTRL-Z。
中间挺复杂的。有时优化状态补对。
选“涮新”,就好了,此时不管什么优化和CTRL-Z了。
回复

使用道具 举报

2950#
发表于 2012-5-21 18:52:57 | 只看该作者
经测试,69.67(3)的MENU

MENU T1,MYMENU,***
1.在_SUB _END内部时,正常,点击托盘图标也正常。
2.在_SUB _END外部时,只闪了一下,没有托盘图标出现。
回复

使用道具 举报

2951#
 楼主| 发表于 2012-5-21 20:26:17 | 只看该作者

回复 #3030 wbz2cdma 的帖子

》》2.在_SUB _END外部时,只闪了一下,没有托盘图标出现。
程序都退出了, 托盘自然也退出, 所以只是闪一下。

[ 本帖最后由 2012abc19701 于 2012-5-21 21:22 编辑 ]
回复

使用道具 举报

2952#
发表于 2012-5-21 20:39:47 | 只看该作者
原帖由 2012abc19701 于 2012-5-21 17:56 发表
为了优化, 为了CTRL-Z。
中间挺复杂的。有时优化状态补对。
选“涮新”,就好了,此时不管什么优化和CTRL-Z了。


-----
明白了。如果用FORX来遍历目录和所有目录下的文件,不用CMD的情况下,有没有好的方法?用FORX该怎么写呢?
回复

使用道具 举报

2953#
发表于 2012-5-21 20:56:48 | 只看该作者
支持LZ,但个人建议应把帮助界面改得板式整齐一点~~~~
回复

使用道具 举报

2954#
发表于 2012-5-21 21:00:08 | 只看该作者
原帖由 2010ttt 于 2012-5-21 20:56 发表
支持LZ,但个人建议应把帮助界面改得板式整齐一点~~~~


-------------------
这个很费时间,我一直在这方面修改,不过真的完全改好,估计要再等等了
不过现在已经和楼主的统一了格式,这样大家应该不会看得太辛苦才对 ^_^
回复

使用道具 举报

2955#
发表于 2012-5-21 21:24:38 | 只看该作者
恩。来看看,学习学习。。。。。。。。。。。。。。。。。。。
回复

使用道具 举报

2956#
 楼主| 发表于 2012-5-21 21:32:02 | 只看该作者
原帖由 988668 于 2012-5-21 20:39 发表 如果用FORX来遍历目录和所有目录下的文件,不用CMD的情况下,有没有好的方法?用FORX该怎么写呢?




还是实际点。 如果CMD方便解决问题,什么呢。
PECMD 就是一个胶水,将所有资源(工具)粘在一起,构成一个新工具。





参见 PETOOLS_LINK.WCS:
查找指定目录所有  *.wim *.cmd *.bat *.exe *.wcs *.wcz  readme*.txt 使用说明*.txt
分别处理:
EXEC* --wd:"%~1" &&LST=!cmd /c dir /s/a/b *.wim *.cmd *.bat *.exe *.wcs *.wcz  readme*.txt 使用说明*.txt
//到此,所有文件列表保存到 %&LST%, 一个.

FORX *NL &LST,&&LINE, CALL  MAKE_LINK "%&LINE%"  //带有目录

//这里,FORX  *NL 依次提出一行,一个文件。 依次处理。
回复

使用道具 举报

2957#
发表于 2012-5-21 21:49:45 | 只看该作者
多谢楼主解释!感觉这个工具越来越完善和强大了。
988668:整理文档辛苦了。要是把楼主的说明、示例等详细解释都放到帮助文档相对应的命令下就好了。
比如#3036楼的解释。
回复

使用道具 举报

2958#
发表于 2012-5-21 21:53:48 | 只看该作者
原帖由 2012abc19701 于 2012-5-21 21:32 发表




还是实际点。 如果CMD能方便解决问题,为什么不用呢。
PECMD 就是一个胶水,将所有资源(工具)粘在一起,构成一个新工具。





参见 PETOOLS_LINK.WCS:
查找指定目录下的所有  *.wim *.cmd * ...


--------------------------
CMD是不错。只是楼主,为何“FORX @ %目录%”只能列出一级的目录呢?而不让它一起列出目录下所有的子目录呢?要实现这个目标是否有什么困难?只能列出一级的目录在使用起来确实很不爽的感觉,而且现在的FORX命令,在保持现在的结构功能下,只要可以让“FORX @ %目录%” 列出目录下所有的子目录,就可以用嵌套来实现了,简单很多啊?希望楼主考虑考虑 ^_^
回复

使用道具 举报

2959#
发表于 2012-5-21 21:56:59 | 只看该作者
原帖由 wbz2cdma 于 2012-5-21 21:49 发表
多谢楼主解释!感觉这个工具越来越完善和强大了。
988668:整理文档辛苦了。要是把楼主的说明、示例等详细解释都放到帮助文档相对应的命令下就好了。
比如#3036楼的解释。


-------------------------------
有的,你只要辛苦一点,查阅以前的楼层,然后对比现在新版本的说明,基本上都加上,
新的需要时间整理和消化,慢慢来吧
回复

使用道具 举报

2960#
 楼主| 发表于 2012-5-21 23:15:42 | 只看该作者
原帖由 988668 于 2012-5-21 21:53 发表
--------------------------
CMD是不错。只是楼主,为何“FORX @ %目录%”只能列出一级的目录呢?而不让它一起列出目录下所有的子目录呢?要实现这个目标是否有什么困难?只能列出一级的目录在使用起来确实 ...




可以实现,但是力气,鸡肋感觉。
看看  DIR  选项,排序等。
全部现,工作太大。 实现, 鸡肋。
不如直接调用,DIR了。
回复

使用道具 举报

2961#
发表于 2012-5-22 07:57:06 | 只看该作者
DIR的参数内容:
DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
  [/O[[:]sortorder]] [/P] [/Q] [/S] [/T[[:]timefield]] [/W] [/X] [/4]

  [drive:][path][filename]
              指定要列出的驱动器、目录和/或文件。

  /A          显示具有指定属性的文件。
  attributes   D  目录                R  只读文件
               H  隐藏文件            A  准备存档的文件
               S  系统文件            -  表示“否”的前缀
  /B          使用空格式(没有标题信息或摘要)。
  /C          在文件大小中显示千位数分隔符。这是默认值。用 /-C 来
              停用分隔符显示。
  /D          跟宽式相同,但文件是按栏分类列出的。
  /L          用小写。
  /N          新的长列表格式,其中文件名在最右边。
  /O          用分类顺序列出文件。
  sortorder    N  按名称(字母顺序)     S  按大小(从小到大)
               E  按扩展名(字母顺序)   D  按日期/时间(从先到后)
               G  组目录优先           -  颠倒顺序的前缀
  /P          在每个信息屏幕后暂停。
  /Q          显示文件所有者。
  /S          显示指定目录和所有子目录中的文件。
  /T          控制显示或用来分类的时间字符域。
  timefield   C  创建时间
              A  上次访问时间
              W  上次写入的时间
  /W          用宽列表格式。
  /X          显示为非 8dot3 文件名产生的短名称。格式是 /N 的格式,
              短名称插在长名称前面。如果没有短名称,在其位置则
              显示空白。
  /4          用四位数字显示年

可以在 DIRCMD 环境变量中预先设定开关。通过添加前缀 - (破折号)
来替代预先设定的开关。例如,/-W。
回复

使用道具 举报

2962#
发表于 2012-5-22 08:08:21 | 只看该作者
原帖由 2012abc19701 于 2012-5-21 23:15 发表




可以实现,但是费了大力气,海是鸡肋的感觉。
看看  DIR  选项,如排序等。
要全部实现,工作量太大。 补实现,又是个 鸡肋。
不如直接调用,DIR好了。
  


------------------------
这个一直也是以前的PECMD的硬伤,也一直使用cmd来解决。不过回头想想觉得不可思议,小
小的CMD居然将FOR与DIR做得如此精妙,实在有些好过分的感觉。而楼主的FORX也做得非常好
了,离实现该功能也就差一步了,只是这一步之遥,看来不容易跨越了。也罢,谢谢楼主的
释疑了。

我在嵌套的时候,也是无法处理目录排序的问题,而这时发现,如果“FORX @%目录%”可以实
现列出所有子目录,在套上“FORX .\*”,就能实现遍历所有目录的文件了,确实就是只差这
一步的了。呵呵,这一步,看是简单,其实不容易(⊙o⊙)哦

[ 本帖最后由 988668 于 2012-5-22 08:12 编辑 ]
回复

使用道具 举报

2963#
 楼主| 发表于 2012-5-22 08:16:53 | 只看该作者
原帖由 988668 于 2012-5-22 08:08 发表
------------------------
这个一直也是以前的PECMD的硬伤,也一直使用cmd来解决。不过回头想想觉得不可思议,小
小的CMD居然将FOR与DIR做得如此精妙,实在有些好过分的感觉。而楼主的FORX也做得非常好
...


看的眼花缭乱,实现起来,其实也不会增加太多的2进制码,大概1~2K吧。
只是,有现成的,干嘛不直接用。PECMD什么都要自己重新实现,最终会WINDOWS
一样变得臃肿。

要不建立一个DIR的包装。
DIR  name 参数...
结果存在name中,一行一个。

[ 本帖最后由 2012abc19701 于 2012-5-22 08:18 编辑 ]
回复

使用道具 举报

2964#
 楼主| 发表于 2012-5-22 08:27:41 | 只看该作者

回复 #3042 988668 的帖子

SORT 可以调用外部的 SORT 来排序。
回复

使用道具 举报

2965#
发表于 2012-5-22 11:47:16 | 只看该作者
原帖由 2012abc19701 于 2012-5-22 08:16 发表


看的眼花缭乱,实现起来,其实也不会增加太多的2进制码,大概1~2K吧。
只是,有现成的,干嘛不直接用。PECMD什么都要自己重新实现,最终会WINDOWS
一样变得臃肿。

要不建立一个DIR的包装。
DIR  nam ...


----------
确实没有这么贪心想PECMD能全部实现所有功能的,只是在4.0或以前做脚本的时候,由于常
常要切换CMD来进行文件处理,导致了程序处理变慢很多,而且还常常崩溃,个人觉得如果能
实现了这个跨越,就完美的超越了4.0了,当然这不是一定要和4.0比的事情。只是现在楼主
的PECMD的这个FORX @命令就是差这一步之遥了,好遗憾的感觉啊。
回复

使用道具 举报

2966#
 楼主| 发表于 2012-5-22 14:48:02 | 只看该作者

PECMD2012.1.69.68_win32.多窗口多线程.sfx.zip

原帖由 988668 于 2012-5-22 11:47 发表
确实没有这么贪心想PECMD能全部实现所有功能的,只是在4.0或以前做脚本的时候,由于常

常要切换CMD来进行文件处理,导致了程序处理变慢很多,而且还常常崩溃,个人觉得如果能
实现了这个跨越 ...


好吧,加个 子目录内找, 按名字排序, 少加点。

PECMD2012.1.69.68_win32.多窗口多线程.sfx.zip:

1. 文件版 FORX:
FORX [/S] [/O:N] [/O:-N] [@|$][[!]\]<文件>,<变量>,[数值],<命令> [参数表]

(1)/S搜寻子目录;
(2)/O:N 按名字排序;
(3)/O:-N 反序
(4) 前导  $ 为 搜索文件和目录
HELP FORX


2. PECMD  DIR
DIR [--wd:工作目录] 变量名 参数...  
得到文件列表,一行一个。 保存在 %变量名%

HELP DIR

[ 本帖最后由 2012abc19701 于 2012-5-22 14:57 编辑 ]
回复

使用道具 举报

2967#
发表于 2012-5-22 16:34:47 | 只看该作者
测试69.68的FORX:
我硬盘上有三个名称中含PECMD的目录:PECMD1、PECMD2、PECMD3,
有100个含WINDOWS的目录:C:\windows等等。

forx /s @\*PECMD*,&&myv,2,mess %&myv%
结果:依次出现两次对话框。正常。

forx /s @\*WINDOWS*,&&myv,2,mess %&myv%
结果:依次出现100个对话框。这个不正常吧?哪里出了问题?
回复

使用道具 举报

2968#
 楼主| 发表于 2012-5-22 17:33:11 | 只看该作者

回复 #3047 wbz2cdma 的帖子

哦, 忘了外面还有个分区循环。
下载: PECMD2012.1.69.68_win32.多窗口多线程.sfx.zip[2]

[ 本帖最后由 2012abc19701 于 2012-5-22 18:49 编辑 ]
回复

使用道具 举报

2969#
发表于 2012-5-22 20:49:52 | 只看该作者
forx /s @\*WINDOWS*,&&myv,2,mess %&myv%
正常了。
回复

使用道具 举报

2970#
发表于 2012-5-23 08:33:31 | 只看该作者
MESS测试:

命令:mess 消息
结果:正常

命令:mess 消息 //注释
结果:不正常,连“//注释”也当成消息输出了。

命令:mess 消息@#ok
结果:正常

命令:mess 消息@#ok //注释
结果:正常
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-7-15 05:15

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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