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

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

   火... [复制链接]
 楼主| 发表于 2013-3-12 22:34:39 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-12 22:33 发表
我那段代码是因为envi a=%a%%aa2%出错而退出的,就是因为变量a没有赋值引起的,这应该是envi的问题

加  
ENVI  &&&EnviMode=1
就是处理这类灵异事件


为了兼容老的 4.0 , 所以默认是 【ENVI  &&&EnviMode=0】。
老的代码99%都可以 【ENVI  &&&EnviMode=1】方式。

[ 本帖最后由 mdyblog 于 2013-3-12 22:38 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-3-13 00:15:02 | 显示全部楼层
PECMD2012.1.75.1-130312-2.多窗口线程孵化版_win32_64.sfx.zip

1.  CALL $ 参数至此原始串,
前导=后接原始串。
**qd= 则参数全部为原始串。
原始串 就是还有%也不做变量解释。


-------测试---------
ENVI &&&EnviMode=1
SET$ &B=0 *4096 -
sprintf ,*&B,=%09X%18s,#123,=%&你好%
MESS. 【%&B%】

//结果【0x00000007B             %&你好%】

这里 格式串【%09d%8s】直接写, 否则每个个%要写成%%, 【%%09d%%8s】

同样 【%&你好%】也不会被解释掉为空!!



2.  ENVI 支持原始串
//后缀-raw    //等号后的部分%不做变量解释
-------测试---------
ENVI &&&EnviMode=1
SET  &A=
SET-raw &B=%&A%
MESS. 【%&B%】
//结果【%&A%】
B的内容是【%&A%】 而不是空。
回复

使用道具 举报

 楼主| 发表于 2013-3-13 10:54:04 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-12 22:33 发表
我那段代码是因为envi a=%a%%aa2%出错而退出的,就是因为变量a没有赋值引起的,这应该是envi的问题


问题查出来了,
代码 中演化出下面代码:
%20130313090630
数据太大, 溢出了内部的数据范围。

已修正。
PECMD2012.1.75.1-130312-3.多窗口线程孵化版_win32_64.sfx.zip
回复

使用道具 举报

发表于 2013-3-13 11:17:32 | 显示全部楼层
原帖由 mdyblog 于 2013-3-13 10:54 发表


问题查出来了,
代码 中演化出下面代码:
%20130313090630
数据太大, 溢出了内部的数据范围。

已修正。
PECMD2012.1.75.1-130312-3.多窗口线程孵化版_win32_64.sfx.zip

envi否则数据运算吗?不会还会+-法吧?
回复

使用道具 举报

发表于 2013-3-13 11:20:48 | 显示全部楼层
我还以为我的系统坏了得,用pecmdedit运行pecmd脚本居然还会退出,现在运行脚本不自动退出了
回复

使用道具 举报

 楼主| 发表于 2013-3-13 11:28:59 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-13 11:17 发表

envi否则数据运算吗?不会还会+-法吧?

不是的。 不会计算。 计算用CALC专业点。
问题不是直接出在 ENVI 本身上。 而是任何地方都会出。
出在翻译函数。这是任何命令都需要的,包挂后台悄悄记录调试信息的函数。

%20130313090630


需要解释%NNNNN 的变量。表示函数的第NNNNN个参数。
这要先将NNNNN 转化为C++的数据。C++数据时设计时就指定范围(宽度)了,碰到太大的数据,就超出范围,带来灵异事件。
回复

使用道具 举报

发表于 2013-3-13 11:42:34 | 显示全部楼层
关于&  &&
经过我的测试发现 下级函数能使用上级定义的函数 &   &&  &&& 变量并且返回值可以供上级使用,而上级不能使用下级定义的& && &&&变量,也就是说 & && &&&等价,不知道是不是对的
回复

使用道具 举报

 楼主| 发表于 2013-3-13 11:45:51 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-13 11:20 发表
我还以为我的系统坏了得,用pecmdedit运行pecmd脚本居然还会退出,现在运行脚本不自动退出了


用pecmdedit运行pecmd脚本居然还会退出?
pecmdedit退出不应该。 因为脚本在PECMD进程中运行。 2者不搭界。完全分离的。
即使 脚本使 pecmd 死了,  PECMDEDIT 也毫发无损。

除非 脚本中 幻化 出一个 KILL 来杀死PECMDEDIT进程。

反正 默认的兼容(4.0)模式, 有很多灵异事件, 代码 不断 幻化 ,结果很难预料。
所以 还是加一个【ENVI &&&EnviMode=1】吧。 这样 逻辑是清楚确定的;结果是可以预料;一切在控制下运行。

兼容(4.0)模式 主要是解决多级变量(数组)问题, 4.0本身没有这种机制,所以需要 这种东西。
如下面的代码:
ENVI  A1=ABC
ENVI  A2=DEF
ENVI   I=1
MESS  %A%I%% @ #Ok

%A%I%% 需要兼容模式来解释。

PECMD2012 提供 外科手术式 的  精确打击 模式: 【ENVI~ 】  【SET~ 】
ENVI &&&EnviMode=1  //标准模式
ENVI  A1=ABC
ENVI  A2=DEF
ENVI   I=1
ENVI~  AI=A%I%      //多级变量(数组)
MESS  %AI% @ #Ok
回复

使用道具 举报

发表于 2013-3-13 11:58:12 | 显示全部楼层
1.It not support Unicode ???? MESS "unicode" -> error unicode font

2. Can set mini window1 ??
(Call Window1)

Thank !
回复

使用道具 举报

 楼主| 发表于 2013-3-13 12:06:46 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-13 11:42 发表
关于&  &&
经过我的测试发现 下级函数能使用上级定义的函数 &   &&  &&& 变量并且返回值可以供上级使用,而上级不能使用下级定义的& && &&&变量,也就是说 & && &&&等价,不知道是不是对的



0: &只是一个修饰, 不是变量名的一部分。 &ABC   &&ABC 的变量名都是ABC。& 和&&用来告诉 PECMD如何处理ABC。

1: &&&不是用来定义、操作、引用 PE变量的。
      而是用来 作为 系统配置的开关。 如 ENVI   &&&&EnviMode=1
    当然对于,需要变量的地方, 多几个&也没管。此时统统当做&&。 如MSTR 中。
目前没有浪费代码来拦截这种不标准的代码, 以后可能会拦截的。
    所以还得 不要有 &&&老表示变量。
2:   
    SET & 等价 SET &&  等价 ENVI &&
    对于 【ENVI  &&&FORCELOCAL=1】模式,还有
    ENVI 等价 ENVI  &  等价 SET
3:
    下级函数能使用上级定义的PE变量, 返回后新值还是有效的。

4:上级不能使用下级定义的私有PE变量。在返回时,自动销毁,释放内存。
    需要保留的信息,需要在返回前写入 上级的变量。
私有PE变量: SET &  和SET && 和 ENVI && 和&&写入/定义的变量。
MSTR  &&A=1,2,ABCDEF
  A也是一个 私有PE变量。

上级下级不仅指函数,还有{}的级别。


5:
    所以 PE变量没有销毁命令, 是自动管理的。退出时自动销毁的。
    控件也一样。
    这样不用担心自然没有释放。
   也就是说 PECMD2012是按照面向对象(OOB)原则设计的。
回复

使用道具 举报

 楼主| 发表于 2013-3-13 12:08:31 | 显示全部楼层
原帖由 2011Tduy09 于 2013-3-13 11:58 发表
1.It not support Unicode ???? MESS "unicode" -> error unicode font

2. Can set mini window1 ??
(Call Window1)

Thank !

说的什么啊? 没明白
回复

使用道具 举报

发表于 2013-3-13 12:25:14 | 显示全部楼层
原帖由 mdyblog 于 2013-3-13 12:06 发表



0: &只是一个修饰, 不是变量名的一部分。 &ABC   &&ABC 的变量名都是ABC。& 和&&用来告诉 PECMD如何处理ABC。

1: &&&不是用来定义、操作、引用 PE变量的。
      而是用来 作为 系统配置的开关。  ...

上级变量&&变量 会被下级&变量修改
回复

使用道具 举报

 楼主| 发表于 2013-3-13 12:32:17 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-13 12:25 发表

上级变量&&变量 会被下级&变量修改

是的。
所有 PE变量最终都是&&定义的。
谁定义的,就是谁的。

上级能访问的PE变量, 下级都可以访问和修返回后新值还是有效的
除非下级定义一个同名变量,屏蔽了上级同名变量的操作。
回复

使用道具 举报

发表于 2013-3-13 12:37:02 | 显示全部楼层
原帖由 mdyblog 于 2013-3-13 12:32 发表

是的。
所有 PE变量最终都是&&定义的。
谁定义的,就是谁的。

上级能访问的PE变量, 下级都可以访问和修改,返回后新值还是有效的。
除非下级定义一个同名变量,屏蔽了上级同名变量的操作。

应该是除非下级定义一个&&同名变量
回复

使用道具 举报

发表于 2013-3-13 13:48:34 | 显示全部楼层
Pecmd 4 support Unicode. Pecmd 2012 is not! Can't show chard unicode
回复

使用道具 举报

 楼主| 发表于 2013-3-13 14:12:30 | 显示全部楼层
原帖由 2011Tduy09 于 2013-3-13 13:48 发表
Pecmd 4 support Unicode. Pecmd 2012 is not! Can't show chard unicode

Pecmd 2012  also  support Unicode .

SAVE FILE  with Unicode(BOM)  or UTF8(BOM) or UnicodeBig(BOM).
UNICODE_TEST.wcs.zip (302 Bytes, 下载次数: 7)

[ 本帖最后由 mdyblog 于 2013-3-13 14:14 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-3-13 14:18:38 | 显示全部楼层
原帖由 2011hwo1 于 2013-3-13 12:37 发表

应该是除非下级定义一个&&同名变量

是一个意思。
定义一个&&同名变量 就是 定义一个PE变量, 也是 定义一个本级PE变量。
因为PE变量就是用&&定义的。 (&&不是变量名的一部分,而是说明是定义一个变量)
回复

使用道具 举报

发表于 2013-3-13 14:23:51 | 显示全部楼层
多玩玩PECMD2012各种PE变量穿透读写的规则就会把人弄糊上一阵@,@

建议专门做一个完整的关于PE变量、ENVI、SET的说明文件放在HELP目录里,或者在PECMD一运行就显示的说明的最开头,这样方便随时查阅。
回复

使用道具 举报

发表于 2013-3-13 14:31:47 | 显示全部楼层
UNICODE_TEST ERROR. I use Windows ENGLISH ???!!!!!!
回复

使用道具 举报

发表于 2013-3-13 14:33:29 | 显示全部楼层
and I want Maximize windows 窗口_UNICODE, can use pecmd ????????
回复

使用道具 举报

 楼主| 发表于 2013-3-13 15:36:13 | 显示全部楼层
原帖由 2010qaqz111 于 2013-3-13 14:23 发表
多玩玩PECMD2012各种PE变量穿透读写的规则就会把人弄糊上一阵@,@

建议专门做一个完整的关于PE变量、ENVI、SET的说明文件放在HELP目录里,或者在PECMD一运行就显示的说明的最开头,这样方便随时查阅。


你想复杂了。
从实际用的话,很简单的2条。
(1) 一般用 ENVI &&A=或 SET &A=来定义一个本级的,不同于上级同名的PE变量。 后面&A引用就可以, 操作的都是本级的PE变量A。
(2) 如果需要用到上级的PE变量B, 则不要用 &&来定义本级的PE变量B, 直接用 &B 引用就可以了。操作的始终是上级的PE变量B。

HELP\下有个文档:补充说明.doc
回复

使用道具 举报

发表于 2013-3-13 15:47:15 | 显示全部楼层
can build 1 ver English ??. I use it for Pe English. Thank very for 1 new ver English!
回复

使用道具 举报

 楼主| 发表于 2013-3-13 15:56:29 | 显示全部楼层
原帖由 2011Tduy09 于 2013-3-13 14:31 发表
UNICODE_TEST ERROR. I use Windows ENGLISH ???!!!!!!


1:
没有安装 中文 字体 吧。
找一个大点的字体,包含足够的字符。 你需要的字符都能显示。
再建立字体别名“宋体”。 默认用宋体。
字体和 UNICODE 无关。
UNICODE是指文件编码,就是存储什么样的编码文件,放到U盘,从北京带到台湾,美国, 还是那个信息。  

字体是指机器上的显示问题。

你的问题是 选用的字体太小, 很多字都没有。 需要一个大点的字体, 建立别名为宋体。  
没有宋体时,选用默认字体。      

比照 实际下图显示:
Snap1.gif
(1) UNICODE 不是问题, 有几个UNICODE  “_UNICODE” 是显示出来了,说明编码不是问题。
(2) 默认字体中没有 中文字符“你好【】”
(3) 默认字体中没有 特殊符号“ȫȝȐϔ”




2: 最大化
┃    ├──┼──────────────────────────────────────────────┨
┃    │格式│_SUB <子过程名> 或 _SUB <窗口名称>,<窗口形状>,[窗口标题],[事件],[窗口图标],[窗口类型],[蒙板]┃
┃    │    │     [, -top -forcenomin -disminb -maxb -discloseb -nosysmenu -nocap -disaltmv -size -trap] ┃

-maxb 就是允许最大化
_SUB WIN1,W289H249,窗口_UNICODE,,,,, -maxb
UNICODE_TEST_2.wcs.zip (317 Bytes, 下载次数: 9)
效果: Snap2.gif

[ 本帖最后由 mdyblog 于 2013-3-13 16:03 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-3-13 16:22:12 | 显示全部楼层
原帖由 2011Tduy09 于 2013-3-13 15:47 发表
can build 1 ver English ??. I use it for Pe English. Thank very for 1 new ver English!


英文版, 不需要单独编译了。 反正都一样。
界面基本上由脚本决定。 用英文写的,出来就是英文界面了。
内部有几个按钮,字体等, 可以用 Resedit 更改为 英文。

如图 1101 1102 1103  1104 是 _SUB 窗口。
修改红色的 字体 和 按钮 文字 。
英文版字体改为:
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
FONT 8, "MS Shell Dlg"
左边的2052  改为1033

302 是 帮助界面
1106 是 MESS 界面
1023 是 登陆界面

这种资源修改,不影响运行逻辑和稳定性。
PECMD2012 允许直接2进制修改的!!!!
无标题.png

[ 本帖最后由 mdyblog 于 2013-3-13 16:50 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-3-13 17:01:06 | 显示全部楼层
原帖由 clonecd 于 2013-3-13 16:53 发表
记得老师以前发过,同时去掉一个字符串的前导空白和后导空白用的是哪个语句?

HELP MSTR

┃    │ 5  │MSTR[*$] [-trimleft|-trimright|-trim] 变量名=字符串  //去掉前后的空字符 $仅空格 *仅TAB
回复

使用道具 举报

 楼主| 发表于 2013-3-13 17:03:11 | 显示全部楼层
原帖由 2011Tduy09 于 2013-3-13 14:31 发表
UNICODE_TEST ERROR. I use Windows ENGLISH ???!!!!!!
http://s24.postimage.org/kdml5a1np/unicodeeeee.png


谁有英文版的 PE ? 来测试一下。
回复

使用道具 举报

发表于 2013-3-13 17:31:41 | 显示全部楼层
Thank very much @mdyblog help me!!!
I wait for 1 English Command and Func of PECMD !!! Thank!
Hot key Show Hide Menu is ??? pecmd_4 : Ctrl+Alt+M
回复

使用道具 举报

发表于 2013-3-13 17:36:18 | 显示全部楼层
"Log on the WinPE" How use It ! Thank
回复

使用道具 举报

发表于 2013-3-13 18:13:01 | 显示全部楼层
原帖由 mdyblog 于 2013-3-13 17:03 发表


谁有英文版的 PE ? 来测试一下。

英文版PE 除了老外会用之外,在天朝基本上没什么人会用英文版的PE
英文版PE加入对应的Unicode字体应该就可以显示了吧
回复

使用道具 举报

发表于 2013-3-13 18:20:28 | 显示全部楼层
很好很强大哦顶顶不错
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-10 11:06

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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