无忧启动论坛

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

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

    [复制链接]
7261#
 楼主| 发表于 2014-3-21 12:59:40 | 只看该作者
本帖最后由 mdyblog 于 2014-3-23 10:23 编辑
四海皆狂龙 发表于 2014-3-21 11:19
由于规范,所以容易套用一种方法写和理解,同时由于规范,所以容易扩展功能。所以是不可能眼花缭乱的。

是不是 所有命令统一为:
命令词  --开关1  --开关2 ...  --开关N   参数表
就可以了。

ENVI$  NL=0d 0a
改为 ENVI --hex NL=0d 0x
ENVI%   NL=13 10
改为 ENVI --dec  NL=13 10

FORX  @ABC,...
改为 FORX  --dir  ABC...

EXEC !=abc
改为 EXEC --hide --wait   ABC...   //英文
--hide  用什么文字?
EXEC --hide  --wait    ABC...  //英文
EXEC --隐藏 --等待   ABC...   //简体
EXEC --隱藏 --等待   ABC...   //繁体



大家 来评评, 这样改好不好, 值不值得?

点评

这样的规范其实在语法上是非常容易理解和使用的,并可将符号释放给文本使用,个人感觉是值得的。不过在兼容4.0上面就困难了,所以建议完全版使用规范,稳定版因为无新功能,就继续如此就好了。  发表于 2014-4-27 17:53
但我觉得大家应该已经有些习惯了,如果再改,大家以前的代码又要重写。您也要花费好多精力改。。总的来说,感觉不值得。  发表于 2014-4-13 08:35
用符号确实看起来有点乱。基本上我每次都要查看帮助文档才使用,因为不确定,怕出错。  详情 回复 发表于 2014-4-13 08:32
反正完全版我是没办法用的!特别是新增参数开关等。基本用原来的4.0的语法就可以了,也很简洁。现在确实是*^$符号满天飞,我看是没有几个能掌握的了。 建议在4.0的基础上,所有扩展功能都用--来引导。  详情 回复 发表于 2014-3-24 09:54
其实很不喜欢^$`类似符号 虽然为了避免某些特殊问题,但流行语言为了避免这些问题,也没有这样做,这些符号看上去太难懂了。  详情 回复 发表于 2014-3-21 22:00
回复

使用道具 举报

7262#
发表于 2014-3-21 14:05:32 | 只看该作者
mdyblog 发表于 2014-3-21 12:59
是不是 所有命令统一为:
命令词  --开关1  --开关2 ...  --开关N   参数表
就可以了。

这样倒好理解,就是显得罗嗦了
回复

使用道具 举报

7263#
发表于 2014-3-21 22:00:05 | 只看该作者
mdyblog 发表于 2014-3-21 12:59
是不是 所有命令统一为:
命令词  --开关1  --开关2 ...  --开关N   参数表
就可以了。

其实很不喜欢^$`类似符号
虽然为了避免某些特殊问题,但流行语言为了避免这些问题,也没有这样做,这些符号看上去太难懂了。
回复

使用道具 举报

7264#
发表于 2014-3-22 09:29:12 | 只看该作者
本帖最后由 hhh333 于 2014-3-22 09:31 编辑

现在有一个常用功能好象没有,就是脚本中再调用其他脚本,会出现两种情况:
A
LOAD B
C
第一种情况是等待B执行完,再C。目前默认是这个运行方式。
另一种情况是不等待B,直接往下执行。这种情况目前是没有办法的,因为LOAD没有这个参数,现在我是EXEC PECMD LOAD B来处理,显然这与直接LOAD是不同的。
要么设一个开关,来设定LOAD的执行方式,或者给LOAD加一下参数(这个灵活一些)。
或者用THREAD LOAD B不知行不行。

点评

对, THREAD*$ LOAD C 等。 THREAD的后缀随实际需要而定。  详情 回复 发表于 2014-3-22 12:57
回复

使用道具 举报

7265#
 楼主| 发表于 2014-3-22 12:57:23 | 只看该作者
本帖最后由 mdyblog 于 2014-3-22 14:03 编辑
hhh333 发表于 2014-3-22 09:29
现在有一个常用功能好象没有,就是脚本中再调用其他脚本,会出现两种情况:
A
LOAD B


对,
THREAD*$  LOAD   B  ......
等。
THREAD的后缀随实际需要而定。
也可以  THREAD*$  CALL  FUN_X ...
FUNX 函数中 某处  LOAD  B ...


多任务就2种方法
1)多进程:   EXEC  %&MyName%  ....
2)  多线程:  THREAD ....

注意, 用 THREAD  时,最好用 PE变量。用环境变量时注意冲突。

本脚本或C 读写  ABC 变量, B也读写  ABC 变量。就可能出现 莫名其妙的问题。因为他们操作的是同一变量,彼此干扰。
PE变量 则是 彼此独立的,不互相影响。

多进程 中的 环境变量 也是 彼此独立的,不互相影响。


// 多线程少用环境变量
// 不要用 CurFile CurDir CurDrv 等, 用&CurFile &CurFile &CurDrv  等

多线程LOAD.zip (1.05 KB, 下载次数: 4)
回复

使用道具 举报

7266#
发表于 2014-3-22 19:17:29 | 只看该作者
如何让pecmd隐藏调用它的批处理窗口

点评

exec =!cmd /c abc.cmd 11 22 33 或 exec =!abc.cmd 11 22 33 11 22 33 是参数,根据需要写.  详情 回复 发表于 2014-3-22 21:24
回复

使用道具 举报

7267#
 楼主| 发表于 2014-3-22 21:24:39 | 只看该作者
本帖最后由 mdyblog 于 2014-3-22 21:25 编辑
ljycslg 发表于 2014-3-22 19:17
如何让pecmd隐藏调用它的批处理窗口


exec  =!cmd /c abc.cmd  11 22 33

exec  =!abc.cmd  11 22 33

11 22 33 是参数,根据需要写.

/////////////

"调用它的批处理窗口"????

点评

不是隐藏运行,是已经显示再怎么隐藏?  详情 回复 发表于 2014-3-22 21:30
回复

使用道具 举报

7268#
发表于 2014-3-22 21:30:07 | 只看该作者
mdyblog 发表于 2014-3-22 21:24
exec  =!cmd /c abc.cmd  11 22 33

exec  =!abc.cmd  11 22 33

不是隐藏运行,是已经显示再怎么隐藏?

点评

"调用它的批处理窗口"???? 什么意思???? 能不能 把问题说明白?? 写详细点。 写出你的关键问题代码。(能独立运行)  详情 回复 发表于 2014-3-22 23:31
回复

使用道具 举报

7269#
 楼主| 发表于 2014-3-22 23:31:06 | 只看该作者
ljycslg 发表于 2014-3-22 21:30
不是隐藏运行,是已经显示再怎么隐藏?

"调用它的批处理窗口"????
什么意思????

能不能 把问题说明白??
写详细点。
写出你的关键问题代码。(能独立运行)

点评

或者这样,就是如何隐藏已经显示的某程序窗口  详情 回复 发表于 2014-3-22 23:46
回复

使用道具 举报

7270#
发表于 2014-3-22 23:46:18 | 只看该作者
mdyblog 发表于 2014-3-22 23:31
"调用它的批处理窗口"????
什么意思????

或者这样,就是如何隐藏已经显示的某程序窗口

点评

你知道它的什么信息? 比如标题 什么的 ?  详情 回复 发表于 2014-3-22 23:47
回复

使用道具 举报

7271#
 楼主| 发表于 2014-3-22 23:47:46 | 只看该作者
ljycslg 发表于 2014-3-22 23:46
或者这样,就是如何隐藏已经显示的某程序窗口

你知道它的什么信息?
比如标题 什么的 ?

点评

隐藏图上的批处理框,查了这个框进程名是ftpuse.exe [attachimg]190199[/attachimg]  详情 回复 发表于 2014-3-22 23:54
回复

使用道具 举报

7272#
发表于 2014-3-22 23:54:23 | 只看该作者
mdyblog 发表于 2014-3-22 23:47
你知道它的什么信息?
比如标题 什么的 ?

隐藏图上的批处理框,查了这个框进程名是ftpuse.exe

点评

隐藏当前 CMD  详情 回复 发表于 2014-3-23 00:36
"调用它的批处理窗口" 是不 是: 你有abC.cmd的程序有个黑窗口。 你想在ABC.CMD 中 调用 PECMD.EXE 来隐藏 abc.CMD 的 黑窗口。 对吗?  详情 回复 发表于 2014-3-23 00:23
cmd 麻烦点。 很多程序的 窗口都叫 一个名字如:X:\windows\system32\cmd.exe 此时还需要知道 其它信息才能定位, 比如PID 号。 如果是 PECMD EXEC 生成的, 可以知道PID  详情 回复 发表于 2014-3-23 00:15
回复

使用道具 举报

7273#
 楼主| 发表于 2014-3-23 00:15:39 | 只看该作者
ljycslg 发表于 2014-3-22 23:54
隐藏图上的批处理框,查了这个框进程名是ftpuse.exe


cmd 麻烦点。
很多程序的 窗口都叫 一个名字如:X:\windows\system32\cmd.exe
此时还需要知道 其它信息才能定位, 比如PID 号。
如果是 PECMD EXEC 生成的, 可以知道PID



  1. ENVI^ ENVIMODE=1

  2. envi pid=0
  3. exec --pid:pid  cmd /c  abc.cmd
  4. envi winid=0
  5. LOOP #%winid%=0,
  6. {
  7. FIND --forpid:%pid%  --wid*  winid,%SystemRoot%\system32\cmd.exe
  8. IFEX $%winid%=0,!  EXIT
  9. WAIT 100
  10. }

  11. MESS  隐藏:win=%winid%  pid=[%pid%]
  12. ENVI @@Visable=%winid%:0
  13. MESS  恢复:win=%winid%  pid=[%pid%]
  14. ENVI @@Visable=%winid%:1
复制代码

Tst-隐藏-显示.zip

424 Bytes, 下载次数: 1, 下载积分: 无忧币 -2

回复

使用道具 举报

7274#
 楼主| 发表于 2014-3-23 00:23:31 | 只看该作者
ljycslg 发表于 2014-3-22 23:54
隐藏图上的批处理框,查了这个框进程名是ftpuse.exe

"调用它的批处理窗口"
是不 是:
你有abC.cmd的程序有个黑窗口。
你想在ABC.CMD 中 调用 PECMD.EXE 来隐藏 abc.CMD 的 黑窗口。

对吗?

回复

使用道具 举报

7275#
 楼主| 发表于 2014-3-23 00:36:06 | 只看该作者
本帖最后由 mdyblog 于 2014-3-23 00:48 编辑
ljycslg 发表于 2014-3-22 23:54
隐藏图上的批处理框,查了这个框进程名是ftpuse.exe


隐藏当前 CMD
隐藏我.cmd  调用 pecmd  load  hideme.wcs  "%SystemRoot%\System32\cmd.exe"
来隐藏   隐藏我.cmd 的黑窗口。

用法:
start "" pecmd  load  hideme.wcs  "当前黑窗口的标题"

pecmd  load  hideme.wcs  "当前黑窗口的标题"



隐藏我.zip

644 Bytes, 下载次数: 5, 下载积分: 无忧币 -2

点评

不错,就是我要的效果  详情 回复 发表于 2014-3-23 12:46
回复

使用道具 举报

7276#
发表于 2014-3-23 12:46:10 | 只看该作者
mdyblog 发表于 2014-3-23 00:36
隐藏当前 CMD
隐藏我.cmd  调用 pecmd  load  hideme.wcs  "%SystemRoot%\System32\cmd.exe"
来隐藏  ...

不错,就是我要的效果

点评

如果(大家)能想办法 一开始 就把问题描述清楚, 就 快多了。 最清楚的办法: 做一个 很小的独立测试 程序。 在依此说明那行,有 什么问题 ,希望什么效果。 最终 将代码 改好 即可。  详情 回复 发表于 2014-3-23 13:58
回复

使用道具 举报

7277#
 楼主| 发表于 2014-3-23 13:58:34 | 只看该作者
本帖最后由 mdyblog 于 2014-3-23 14:00 编辑
ljycslg 发表于 2014-3-23 12:46
不错,就是我要的效果


如果(大家)能想办法 一开始 就把问题描述清楚, 就 快多了。免得唧唧歪歪 摸 半天 不得要领。

最清楚的办法: 做一个 很小的独立测试 程序。
再依此说明那行,有 什么问题 ,希望什么效果。打包。
最终  将代码  改好 即可。
回复

使用道具 举报

7278#
发表于 2014-3-24 09:54:37 | 只看该作者
mdyblog 发表于 2014-3-21 12:59
是不是 所有命令统一为:
命令词  --开关1  --开关2 ...  --开关N   参数表
就可以了。

反正完全版我是没办法用的!特别是新增参数开关等。基本用原来的4.0的语法就可以了,也很简洁。现在确实是*^$符号满天飞,我看是没有几个能掌握的了。
建议在4.0的基础上,所有扩展功能都用--来引导。
回复

使用道具 举报

7279#
发表于 2014-3-24 10:06:12 | 只看该作者
本帖最后由 hhh333 于 2014-3-24 10:32 编辑

LOGO *top **这个是么意思吗?
设置一个透明画布是吧?LOGO本来就有TOP的意思,没必要加吧?
实际上用这个主要就是在不影响当前桌面的前提下让后续TEXT不产生重影。能不能直接来一个LOGO * 或者LOGO #*(*代表任意颜色即表示原来的颜色)就OK了
或者改善TEXT的功能,让其不产生重影

点评

为 WIN8 定制的 。 WIN8 有安全限制。 普通TEXT 写不上,或不正常(惨不忍睹) 需要LOGO背景,再TEXT。最后关闭LOGO 没有 LOGO背景画, 就用这个 先来一下。再TEXT。最后关闭LOGO  详情 回复 发表于 2014-3-24 10:28
回复

使用道具 举报

7280#
 楼主| 发表于 2014-3-24 10:28:33 | 只看该作者
本帖最后由 mdyblog 于 2014-3-24 13:06 编辑
hhh333 发表于 2014-3-24 10:06
LOGO *top **这个是么意思吗?
设置一个透明画布是吧?LOGO本来就有TOP的意思,没必要加吧?
实际上用这 ...


为 WIN8 定制的 。
WIN8 有安全限制。 普通TEXT 写不上,或不正常(惨不忍睹)
需要LOGO背景,再TEXT。最后关闭LOGO
没有 LOGO背景画, 就用这个 先来一下。再TEXT。最后关闭LOGO

LOGO 默认 不是top。这样保证不挡住新的窗口。

点评

精简版支不支持LOGO透明画布应用  详情 回复 发表于 2014-3-24 12:06
回复

使用道具 举报

7281#
发表于 2014-3-24 12:06:33 | 只看该作者
mdyblog 发表于 2014-3-24 10:28
为 WIN8 定制的 。
WIN8 有安全限制。 普通TEXT 写不上,或不正常(惨不忍睹)
需要LOGO背景,再TEXT ...

精简版支不支持LOGO透明画布应用

点评

是的。 必须 线给一个 背景图片。 其实,考虑你的 应用, 根本 不用 那个精简版82。 精简版82 是给 需要 缩小体积,但 功能 要求不多的 2次开发, 开发一个独立 的 exe程序。 其实, 只需要 用完整版 ,再  详情 回复 发表于 2014-3-24 12:50
回复

使用道具 举报

7282#
 楼主| 发表于 2014-3-24 12:50:17 | 只看该作者
本帖最后由 mdyblog 于 2014-3-24 13:07 编辑
hhh333 发表于 2014-3-24 12:06
精简版支不支持LOGO透明画布应用


是的。
必须 先给一个  背景图片。只支持这种方式。
//另外 透明画布,从实际看, 很多8PE开启了 复杂字体功能,此时 字体边缘 是半透明的, 在 透明画布 上 呈现 锯齿状。不是很漂亮。
//要漂亮, 还是  改变设计思路。
//1) 加背景图片
//2)或用 TOP无边框  的窗口。


其实,考虑你的 应用, 根本 不用 那个精简版82。(现在才明白你只是用他当4.0来启动PE)
精简版82 是给 需要  缩小体积,但 功能 要求不多的 2次开发, 开发一个独立 的 exe程序。

其实, 你只需要 用完整版的pecmd.EXE ,再用 精简 的 指导 书, 就是一个适用的 “精简”。(反正PE也不在乎多这300K,多也不多他少也不少他)
这个  DVD008 已经做好了, 精简 的 指导书 就在HELP目录下。基本就是 4.0的说明。
一般就看这个说明。 万一  需要复杂的 功能, 就看 完整版的指导书。

点评

我没用到高级功能,因此还是想用精简版  详情 回复 发表于 2014-3-24 14:04
回复

使用道具 举报

7283#
发表于 2014-3-24 14:04:08 | 只看该作者
本帖最后由 hhh333 于 2014-3-24 14:07 编辑
mdyblog 发表于 2014-3-24 12:50
是的。
必须 先给一个  背景图片。只支持这种方式。
//另外 透明画布,从实际看, 很多8PE开启了 复 ...


我没用到高级功能,因此还是想用精简版。以精简版为准,想把那些不规则的脚本都去掉。

点评

命令次-特别开关 -一般开关1 -一般开关2 参数 【1】 或 命令次[-] -一般开关1 -一般开关2 参数 【2】 一般采用 -一般开关 少数不得以 采用 -特别开关 下面 其实 是 -特别开  详情 回复 发表于 2014-3-26 08:18
回复

使用道具 举报

7284#
 楼主| 发表于 2014-3-26 08:18:45 | 只看该作者
本帖最后由 mdyblog 于 2014-3-26 08:20 编辑
hhh333 发表于 2014-3-24 14:04
我没用到高级功能,因此还是想用精简版。以精简版为准,想把那些不规则的脚本都去掉。

命令次-特别开关    -一般开关1  -一般开关2    参数     【
方式1】

命令次[-]      -一般开关1  -一般开关2    参数         【
方式2】

一般采用  -一般开关  
少数不得以 采用  -特别开关
下面 其实 是   -特别开关  简化为   -  , 然后放到 一般开关。


特别开关 为兼容4.0,如下:
mess-max   你好        【方式1】

mess-  -max -- 你好    【方式2】
top方式显示 [你好]   

mess -max   你好    【4.0方式】
显示 [-max 你好]

大家觉得 方式1】 方式2】哪个叫好点, 或建议其他方式。
来个88版本。


点评

命令词 [--特别开关] [-开关1] [-开关2]...[-开关n] [原4.0前导符] ,,....  详情 回复 发表于 2014-3-26 09:00
回复

使用道具 举报

7285#
发表于 2014-3-26 08:46:00 | 只看该作者
精简版支持KILL *explorer Explorer的用法吗?
回复

使用道具 举报

7286#
发表于 2014-3-26 09:00:31 | 只看该作者
本帖最后由 hhh333 于 2014-3-26 09:03 编辑
mdyblog 发表于 2014-3-26 08:18
命令次-特别开关    -一般开关1  -一般开关2    参数     【方式1】

命令次[-]      -一般开关1  - ...


命令词 [--特别开关] [-开关1] [-开关2]...[-开关n] [原4.0前导符] <参数1>,<参数2>,....<参数n>

如无特别必要,特别开关应去掉

点评

估计只有完整版需要。 主要MESS 等命令的括展, 同时又要兼容4.0 要兼容4.0 MESS -top 你好 只能和4.0一样解释为普通显示【-top 你好】 因为4。0报后面的字符不管37 21,全当作现实字符,没有一点空间。 而  详情 回复 发表于 2014-3-26 11:28
回复

使用道具 举报

7287#
 楼主| 发表于 2014-3-26 11:28:27 | 只看该作者
本帖最后由 mdyblog 于 2014-3-26 11:31 编辑
hhh333 发表于 2014-3-26 09:00
命令词 [--特别开关] [-开关1] [-开关2]...[-开关n] [原4.0前导符] ,,....

如无特别必要,特别开关 ...


估计只有完整版需要。
主要MESS 等命令的括展, 同时又要兼容4.0
要兼容4.0
MESS  -top  你好
只能和4.0一样解释为普通显示【-top 你好】
因为4。0报后面的字符不管37 21,全当作现实字符,没有一点空间。
而要现实 top 方式的 [你好],-top 的标记 只号在前面mess上做文章,做mess的后缀这种特别开关。

或者 加后缀X,如MESSX 表示扩展的MESS 。


另外: 你是不是 只要把 精简版 统一成-普通开关,去掉新增的怪符号。 而不要求完整版也统一。
         如果这样,那就好办多了,可以马上出来。 毕竟精简版才出来,没有历史包袱。想改就该。

完整版嘛,得慎重点,步子慢点,多想几种方案,择优选取,看看大家的反应。

点评

1、完整版真的需要特殊扩展功能那确实命令加一个X比较好 2、精简版希望能够标准化,将比4.0新增的功能做好 3、另外反馈一上,好象精简版LABE不支持\n功能  详情 回复 发表于 2014-3-26 12:40
回复

使用道具 举报

7288#
发表于 2014-3-26 12:40:53 | 只看该作者
mdyblog 发表于 2014-3-26 11:28
估计只有完整版需要。
主要MESS 等命令的括展, 同时又要兼容4.0
要兼容4.0

1、完整版真的需要特殊扩展功能那确实命令加一个X比较好
2、精简版希望能够标准化,将比4.0新增的功能做好
3、另外反馈一上,好象精简版LABE不支持\n功能

点评

PECMD新精简版2012.1.82-N10N-140114.zip LABE 改了。 开关统一了。 如 EXEC* ABC=cmd /c dir 改为 EXEC -catch ABC=cmd /c dir  详情 回复 发表于 2014-3-27 00:43
LABE \n功能, 晚上回去加。  详情 回复 发表于 2014-3-26 12:46
回复

使用道具 举报

7289#
 楼主| 发表于 2014-3-26 12:46:48 | 只看该作者
本帖最后由 mdyblog 于 2014-3-26 12:48 编辑
hhh333 发表于 2014-3-26 12:40
1、完整版真的需要特殊扩展功能那确实命令加一个X比较好
2、精简版希望能够标准化,将比4.0新增的功能做 ...


LABE \n功能, 晚上回去加。 还有什 么  的\n 没有?。
回复

使用道具 举报

7290#
 楼主| 发表于 2014-3-27 00:43:47 | 只看该作者
本帖最后由 mdyblog 于 2014-3-27 16:34 编辑
hhh333 发表于 2014-3-26 12:40
1、完整版真的需要特殊扩展功能那确实命令加一个X比较好
2、精简版希望能够标准化,将比4.0新增的功能做 ...

PECMD新精简版2012.1.82-N10N-140114.zip
LABE  改了。
开关统一了。
如  EXEC*              ABC=cmd /c dir 改为
     EXEC  --catch    ABC=cmd /c dir  

如  THREAD*$   改为
     THREAD -exp  -link


如  ENVI^  改为
     ENVI -mode

点评

EXEC --catch ABC=cmd /c dir 应该为EXEC -catch ABC=cmd /c dir 吧 究竟是一个“-”还是2个“--”  详情 回复 发表于 2014-3-27 21:49
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-16 20:46

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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