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

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

   火... [复制链接]
 楼主| 发表于 2015-3-28 18:00:36 | 显示全部楼层
hhh333 发表于 2015-3-28 17:46
这个还是不兼容4.0为好,况且前面的2月份以前的版本都是顶格输出的。
之所以4.0要那么输出,是因为老九 ...

你说的也对。
看看 2010WAIGO 什么意思。 免得 来回改, 累死了。
回复

使用道具 举报

 楼主| 发表于 2015-3-29 09:45:43 | 显示全部楼层
hhh333 发表于 2015-3-28 17:46
这个还是不兼容4.0为好,况且前面的2月份以前的版本都是顶格输出的。
之所以4.0要那么输出,是因为老九 ...

还是不改了。改来改去,没什么意思。
基本上:尽量兼容4。0
回复

使用道具 举报

发表于 2015-3-29 23:12:55 | 显示全部楼层
用EXEC来执行dism, EXEC* --cmd::200:OnMsg  &V=!dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mnt
下图中的进度信息怎么获取不啊?
捕获.PNG

点评

试试 EXEC* -err+ -cmd::200:OnMsg &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mnt 或 EXEC* -cmd::200:OnMsg &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mn  详情 回复 发表于 2015-3-30 09:12
回复

使用道具 举报

 楼主| 发表于 2015-3-30 09:12:45 | 显示全部楼层
sp_star 发表于 2015-3-29 23:12
用EXEC来执行dism, EXEC* --cmd::200:OnMsg  &V=!dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /Moun ...

试试
EXEC* -err+ -cmd::200:OnMsg  &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mnt

EXEC*  -cmd::200:OnMsg  &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mnt

点评

看样子有点难办,这2个方法都没成功  详情 回复 发表于 2015-3-30 10:18
回复

使用道具 举报

发表于 2015-3-30 10:18:42 | 显示全部楼层
mdyblog 发表于 2015-3-30 09:12
试试
EXEC* -err+ -cmd::200:OnMsg  &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D ...

看样子有点难办,这2个方法都没成功

点评

EXEC* -err+ &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mnt  详情 回复 发表于 2015-3-30 11:43
回复

使用道具 举报

 楼主| 发表于 2015-3-30 11:43:01 | 显示全部楼层
sp_star 发表于 2015-3-30 10:18
看样子有点难办,这2个方法都没成功

EXEC* -err+  &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mnt

点评

同样,别的信息都有,但中间的=====的进度信息返回不了。估计是有点特殊,算了不折腾了。  详情 回复 发表于 2015-3-30 20:53
回复

使用道具 举报

发表于 2015-3-30 20:53:19 | 显示全部楼层
mdyblog 发表于 2015-3-30 11:43
EXEC* -err+  &V=*dism.exe /Mount-Wim /WimFile:winre.wim /index:1 /MountDir:D:\mnt

同样,别的信息都有,但中间的=====的进度信息返回不了。估计是有点特殊,算了不折腾了。

点评

=====的 ------------ 你看看 是不是有什么参数 开关, 控制 如IMagex 有个开关 /SCROLL  详情 回复 发表于 2015-3-30 21:45
回复

使用道具 举报

 楼主| 发表于 2015-3-30 21:45:49 | 显示全部楼层
sp_star 发表于 2015-3-30 20:53
同样,别的信息都有,但中间的=====的进度信息返回不了。估计是有点特殊,算了不折腾了。

=====的
------------
你看看 是不是有什么参数 开关, 控制
如IMagex 有个开关  /SCROLL

点评

没有加开关,dism命令本来就会显示。同样的命令,如果在cmd下运行,就能动态的现实进度信息,不过是在同一行反复的更新,显示方法可能有点特殊。  详情 回复 发表于 2015-3-30 21:58
回复

使用道具 举报

发表于 2015-3-30 21:58:01 | 显示全部楼层
mdyblog 发表于 2015-3-30 21:45
=====的
------------
你看看 是不是有什么参数 开关, 控制

没有加开关,dism命令本来就会显示。同样的命令,如果在cmd下运行,就能动态的现实进度信息,不过是在同一行反复的更新,显示方法可能有点特殊。

点评

1) 有些命令, 是否在命令行运行, 是不一样的 2) 有些命令, 设计的简单, 没有考虑 非命令行, 中间的进度信息 不能实时获得。 比如7z.exe。 这样的命令, 需要寻找 支持非命令行的版本。 3) 有些  详情 回复 发表于 2015-3-31 06:25
回复

使用道具 举报

 楼主| 发表于 2015-3-31 06:25:30 | 显示全部楼层
sp_star 发表于 2015-3-30 21:58
没有加开关,dism命令本来就会显示。同样的命令,如果在cmd下运行,就能动态的现实进度信息,不过是在同 ...

1) 有些命令, 是否在命令行运行, 是不一样的

2) 有些命令, 设计的简单, 没有考虑 非命令行, 中间的进度信息 不能实时获得。 比如7z.exe。
       这样的命令, 需要寻找 支持非命令行的版本。
3) 有些命令, 还为 非命令设计了进度 开关。方便2次开发。 *inux的命令都是支持2次开发。
      高版本 ImageX.EXE 支持2次开发。
回复

使用道具 举报

 楼主| 发表于 2015-4-4 00:11:25 | 显示全部楼层
本帖最后由 mdyblog 于 2015-4-4 00:13 编辑

PECMD2012.1.88.05.57-130810中英.多窗口线程稳定版_win32_64新设计.sfx.7z

2015.04.03 V1.88.08.57中英版:
  英文版。英文帮助。
  SET-make 可以用另一VAR为地址。
  MemoryCompare函数

在此郑重感谢ddsony 将HELP文档翻译成 英文



关键的语言资源文件为: PECMD.exe.437.lang  (CMPS -m压缩)


在英文windows上自动显示英文。
测试的话,可以设置环境变量LC_ALL=437

MESS 的按钮变成英文了。
00020.png

帮助变成英文了。
00021.png
回复

使用道具 举报

发表于 2015-4-5 15:11:08 | 显示全部楼层
本帖最后由 ling3882688 于 2015-4-6 03:52 编辑

M大,Core Storage不知有无研究?有无命令可以将Core Storage无损转换为普通卷(苹果系统diskutil命令可以转不过想直接在PE操作。)?
目前我使用的是你之前给我的分区恢复的命令重建分区信息。
没注意什么时候M大已经把Apple Core Storage (i.e. Lion FileVault) partition  给加上了,太给力了。我之前反馈过一次还以为没加呢。
目前我猜测是不是改下这个GUID就可以了呢?改下试试看。

1、PART  -up -super -gpt -cmp 0#+1 {EBD0A0A2-B9E5-4433-87C0-68B6B72699C7}   1G   5G
2、PART  -up -super -gpt -cmp 0#1 {EBD0A0A2-B9E5-4433-87C0-68B6B72699C7}   1G   5G

有个疑问,上面这两种写法。如果这个0#1本身是不存在的都会创建吧?如果0#1本身就存在的话能不能直接省略后面的1G 5G,就是按照原来0#1分区进行修改?
比如这样:PART  -up -super -gpt -cmp 0#1 {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXX}  测试发现如果不加起始和长度的话整个磁盘都会被修改。


磁盘:0
  磁盘信息 磁盘号   大小(字节)         柱面数 磁头数 扇数 扇区 媒体     签名 总线
              0   121332826112          14751    255   63  512   12 FF558F31-80BD-4AAE-94CE-EC838590DBB8 11 GPT F
  字符说明 激活 __本分区起始__ 分区 __本分区结束__ _______本分区______ ______本分区_______
  激活为0x80    磁头_扇区_柱面 类型 磁头_扇区_柱面 _____起始扇区号____ _____扇区总数______
  主分区1: 0x00 0xFE 0xFF 0xFF 0xEE 0xFE 0xFF 0xFF 0x01 0x00 0x00 0x00 0xFF 0xFF 0x1F 0x0E
  主分区2: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
  主分区3: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
  主分区4: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
  标志   : 0x55 0xAA
  全部分区: 1   2   3
  分区  类型 激活(1) 起始(字节)     长度(字节)    隐藏扇区     结尾(字节) 物理# 盘符
     1  C12A7328-F81F-11D2-BA4B-00A0C93EC93B GPT          20480      209715200 0000000000000000 F5D12B11-E038-4B11-BD67-71A21A23FEC1   1   
     2  53746F72-6167-11AA-AA11-00306543ECAC GPT      209735680   120988852224 0000000000000000 48C9483F-7747-4E3E-B8C5-FC1DD1472792   2   
     3  426F6F74-0000-11AA-AA11-00306543ECAC GPT   121198587904      134217728 0000000000000000 434E1CD9-A0DC-4F60-8CA5-51AB6CAE9EAD   3   

点评

GPT比较复杂。 如果修改的话, 建议先都读会来, 再按完整的格式修改,不变的参数照抄旧的。  详情 回复 发表于 2015-4-7 15:11
回复

使用道具 举报

发表于 2015-4-7 00:25:23 | 显示全部楼层
How to assign a label for disk partition using PECMD? Of reverse to this:
FDRV *vol VolumeDisk=%SelectedDisk%
MESS %VolumeDisk%
如何分配使用PECMD磁盘分区的标签? 反向本

点评

//Get Volume FDRV *vol VolumeDisk=%SelectedDisk% MESS %VolumeDisk% //Set Volume FDRV *setvol %SelectedDisk%=XXX  详情 回复 发表于 2015-4-7 10:09
回复

使用道具 举报

发表于 2015-4-7 10:09:11 | 显示全部楼层
weconty 发表于 2015-4-7 00:25
How to assign a label for disk partition using PECMD? Of reverse to this:
FDRV *vol VolumeDisk=%Sel ...

//Get Volume
FDRV *vol VolumeDisk=%SelectedDisk%
MESS %VolumeDisk%
//Set Volume
FDRV *setvol %SelectedDisk%=XXX
回复

使用道具 举报

 楼主| 发表于 2015-4-7 15:11:32 | 显示全部楼层
ling3882688 发表于 2015-4-5 15:11
M大,Core Storage不知有无研究?有无命令可以将Core Storage无损转换为普通卷(苹果系统diskutil命令可以 ...

GPT比较复杂。
如果修改的话,
建议先都读会来, 再按完整的格式修改,不变的参数照抄旧的。

点评

嗯,目前我也是先读出来然后再重建回去,如果想单独改分区类型GUID可以不删除直接修改吗?part -gui上也没法直接修改。  详情 回复 发表于 2015-4-7 15:41
回复

使用道具 举报

发表于 2015-4-7 15:41:51 | 显示全部楼层
本帖最后由 ling3882688 于 2015-4-7 15:43 编辑
mdyblog 发表于 2015-4-7 15:11
GPT比较复杂。
如果修改的话,
建议先都读会来, 再按完整的格式修改,不变的参数照抄旧的。


嗯,目前我也是先读出来然后再重建回去,如果想单独改分区类型GUID可以不删除直接修改吗?part -gui上也没法直接修改。
diskpart倒是可以set id。

点评

可以部分修改的。 好象用-什么的代替,或者“”代替,该参数就是不变。 只是 说起来费劲,没写到说明中。 得回去查查。  详情 回复 发表于 2015-4-7 16:25
回复

使用道具 举报

 楼主| 发表于 2015-4-7 16:25:14 | 显示全部楼层
ling3882688 发表于 2015-4-7 15:41
嗯,目前我也是先读出来然后再重建回去,如果想单独改分区类型GUID可以不删除直接修改吗?part -gui上 ...

可以部分修改的。
好象用-什么的代替,或者“”代替,该参数就是不变。
只是 说起来费劲,没写到说明中。
得回去查查。



点评

好的,那我等你查完试试吧。 不明白为什么这个GUID类型这么难改,是本身就不好处理吗?  详情 回复 发表于 2015-4-7 16:29
回复

使用道具 举报

发表于 2015-4-7 16:29:51 | 显示全部楼层
mdyblog 发表于 2015-4-7 16:25
可以部分修改的。
好象用-什么的代替,或者“”代替,该参数就是不变。
只是 说起来费劲,没写到说明 ...

好的,那我等你查完试试吧。
不明白为什么这个GUID类型这么难改,是本身就不好处理吗?

点评

参数太多。 有时需要 默认(不输入 就默认 固定的值,如名字串),有时需要 不变。 需要2个特别符号,一个是默认, 一个是不变。 语法表达起来很麻烦。  详情 回复 发表于 2015-4-7 16:56
回复

使用道具 举报

 楼主| 发表于 2015-4-7 16:56:41 | 显示全部楼层
本帖最后由 mdyblog 于 2015-4-7 16:59 编辑
ling3882688 发表于 2015-4-7 16:29
好的,那我等你查完试试吧。
不明白为什么这个GUID类型这么难改,是本身就不好处理吗?


参数太多。

有时需要 默认(不输入 就默认 固定的值,如名字串),有时需要 不变。
需要2个特别符号,一个是默认, 一个是不变。

语法表达起来很麻烦。

还要避免不完整信息。。。。。都考虑。。复杂啊。
最简单---每次输入全部参数。(化繁为简)
回复

使用道具 举报

发表于 2015-4-10 16:50:46 | 显示全部楼层
Is there a simple way to convert path Windows -> Linux? // 有没有转换路径的简单方法
\boot\syslinux -> /boot/syslinux
How to assign the letter for disk partition? // 如何分配盘符的磁盘分区?
hdd3#1 -> G:
------------------------
对不起,翻译谷歌

点评

1: Is there a simple way to convert path Windows -> Linux? // 有没有转换路径的简单方法 \boot\syslinux -> /boot/syslinux ---- SED LP=0,\\,/,\boot\syslinux MESS. %LP% 2: How to assign  详情 回复 发表于 2015-4-10 19:53
回复

使用道具 举报

 楼主| 发表于 2015-4-10 19:53:57 | 显示全部楼层
weconty 发表于 2015-4-10 16:50
Is there a simple way to convert path Windows -> Linux? // 有没有转换路径的简单方法
\boot\syslinux  ...


1:
Is there a simple way to convert path Windows -> Linux? // 有没有转换路径的简单方法
\boot\syslinux -> /boot/syslinux
----
SED LP=0,\\,/,\boot\syslinux
MESS. %LP%


2:
How to assign the letter for disk partition? // 如何分配盘符的磁盘分区?
hdd3#1 -> G:
------------------
SHOW 3#1,G:     //物理号
SHOW 3:1,G:       //逻辑号

//磁盘号从0 开始。 3是第4个磁盘。
//分区号从1开始。


回复

使用道具 举报

发表于 2015-4-10 20:17:56 | 显示全部楼层
mdyblog, thank you! And special thanks for the utility. It is a pity that there is no help in English. // 谢谢!并特别感谢实用。这是一个遗憾,没有在英语没有帮助。

点评

最新版有英文帮助----感谢ddsony 参见 9720#  详情 回复 发表于 2015-4-10 20:40
回复

使用道具 举报

 楼主| 发表于 2015-4-10 20:40:00 | 显示全部楼层
weconty 发表于 2015-4-10 20:17
mdyblog, thank you! And special thanks for the utility. It is a pity that there is no help in Englis ...

最新版有英文帮助----感谢ddsony

参见 9720#

点评

请教一个问题,看看有办法吗? PECMD如何创建一个任意长度的二进制变量? 如何将另一个变量的内容拷贝到这个变量的偏置200处?  详情 回复 发表于 2015-4-10 22:20
回复

使用道具 举报

发表于 2015-4-10 22:20:17 | 显示全部楼层
mdyblog 发表于 2015-4-10 20:40
最新版有英文帮助----感谢ddsony

参见 9720#

请教一个问题,看看有办法吗?
PECMD如何创建一个任意长度的二进制变量? 如何将另一个变量的内容拷贝到这个变量的偏置200处?

点评

1: 如果是普通的。 CALC -base=2 就可以 2:如果是超长的,比如1000位。 字串拼 SET BSTR=%BSTR1%%BSTR2%.... 3:你是要 二进制 字符串0b110011100011100 (可以打印出的) 还是一段 二进制内存(不可以  详情 回复 发表于 2015-4-11 07:28
回复

使用道具 举报

发表于 2015-4-10 23:19:23 | 显示全部楼层
mdyblog, very interesting. I integrate the internal english help, but could not get a picture, as you have. //非常有趣的。我整合内部的英语帮助,但无法得到的图片,你有。

点评

English:  详情 回复 发表于 2015-4-11 07:35
回复

使用道具 举报

 楼主| 发表于 2015-4-11 07:28:35 | 显示全部楼层
本帖最后由 mdyblog 于 2015-4-11 07:37 编辑
sp_star 发表于 2015-4-10 22:20
请教一个问题,看看有办法吗?
PECMD如何创建一个任意长度的二进制变量? 如何将另一个变量的内容拷贝到 ...


1: 如果是普通的。
CALC -base=2 就可以

2:如果是超长的,比如1000位。
字串拼
SET BSTR=%BSTR1%%BSTR2%....

3:你是要 二进制 字符串0b110011100011100 (可以打印出的)
还是一段 二进制内存(不可以打印出的)

二进制内存: 写数据就可以,无所谓什么进制。进制是人脑的主观形式。电脑中都一样。

SET$   &DATTo=*100 0x31 0x30 0x30 *800 0    //字符
SET$# &DATTo=*100 0x31 0x30 0x30 *800 0    //字节


4:
用MemeryCopy (支持内存重叠,前后不同的顺序,放心)
  1. LOGS **2 * X.LOG
  2. SET$ &DATTo=*100 0x31 0x30 0x30 *800 0
  3. MESS. %DATTo%
  4. SET &DATFrom=ABCDEFGHI

  5. ENVI-addr  &&p1;&&len1=&DATFrom
  6. ENVI-addr  &&p2;&&len2=&DATTo
  7. CALC   pTo=%p2% + 200
  8. --- [%p1% %len1% %p2% %len2%]

  9. CALL $--c  .,MemoryCopy,#%pTo%,#%p1%,#%len1%
  10. MESS. %DATTo%
复制代码


//注意DATTo,本身要有那么长,否则程序崩溃。
//注意一个字符是2个字节。

点评

谢谢!MemoryCopy正是我需要的。 之前的问题可能提得不太清楚,我想多次读取一定长度的数据,把它们拼接起来。因为数据中可能有连续的0,ENVI命令似乎不能用,ENVI-copy可以用,但好像不能拼接。  详情 回复 发表于 2015-4-11 10:50
回复

使用道具 举报

 楼主| 发表于 2015-4-11 07:35:31 | 显示全部楼层
weconty 发表于 2015-4-10 23:19
mdyblog, very interesting. I integrate the internal english help, but could not get a picture, as yo ...

English:

PECMD_Eng.7z

835.9 KB, 下载次数: 6

回复

使用道具 举报

发表于 2015-4-11 10:50:02 | 显示全部楼层
mdyblog 发表于 2015-4-11 07:28
1: 如果是普通的。
CALC -base=2 就可以

谢谢!MemoryCopy正是我需要的。
之前的问题可能提得不太清楚,我想多次读取一定长度的数据,把它们拼接起来。因为数据中可能有连续的0,ENVI命令似乎不能用,ENVI-copy可以用,但好像不能拼接。

点评

还是MemoryCopy  详情 回复 发表于 2015-4-11 10:58
回复

使用道具 举报

 楼主| 发表于 2015-4-11 10:58:19 | 显示全部楼层
本帖最后由 mdyblog 于 2015-4-11 11:05 编辑
sp_star 发表于 2015-4-11 10:50
谢谢!MemoryCopy正是我需要的。
之前的问题可能提得不太清楚,我想多次读取一定长度的数据,把它们拼接 ...


还是MemoryCopy
LOGS **2 * X.LOG
SET$  &DATTo=*1M  0  //1M字符的缓冲区  

SET  &off=0  //本次写入位置
SET  &DATFrom=    //单次临时接受区

ENVI-addr  &&p2;&&len2=&DATTo

//读取到 &DATFrom...
ENVI-addr  &&p1;&&len1=&DATFrom
TEAM CALC   pTo=%p2% + %off%|  CALC  off=%off%+ %len1%
CALL $--c  .,MemoryCopy,#%pTo%,#%p1%,#%len1%

//读取到 &DATFrom...
ENVI-addr  &&p1;&&len1=&DATFrom
TEAM CALC   pTo=%p2% + %off%|  CALC  off=%off%+ %len1%
CALL $--c  .,MemoryCopy,#%pTo%,#%p1%,#%len1%


//读取到 &DATFrom...
ENVI-addr  &&p1;&&len1=&DATFrom
TEAM CALC   pTo=%p2% + %off%|  CALC  off=%off%+ %len1%
CALL $--c  .,MemoryCopy,#%pTo%,#%p1%,#%len1%

...


MESS. %DATTo%

点评

多谢M大,自己试了几次,已经搞定了。  详情 回复 发表于 2015-4-11 11:53
回复

使用道具 举报

发表于 2015-4-11 11:53:56 | 显示全部楼层
mdyblog 发表于 2015-4-11 10:58
还是MemoryCopy
LOGS **2 * X.LOG
SET$  &DATTo=*1M  0  //1M字符的缓冲区  

多谢M大,自己试了几次,已经搞定了。

点评

搞定 就好!  详情 回复 发表于 2015-4-11 13:54
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-17 15:54

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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