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

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

   火... [复制链接]
发表于 2015-5-2 04:43:30 | 显示全部楼层
mdyblog 发表于 2015-5-1 23:04
PART LIST DISK  1,&&V
MSTR &&dsksz=%&V%
CALC #&&off=%dsksz% / 1M * 1M   -  1G

请教下面的含义:

moun  [-mh: <efi|auto|1-4>]

点评

1: 没有 ENVI^ EnviMode=1 就是兼容方式,是懒人的方式:模模糊糊,“我的意思你懂,总之你给我搞定”。 这是一种贪婪解释,猜测尝试各种可能的解释,并反复解释。 %%&Num%%=1 变量 尝试 %&Num% , 没有就继续  详情 回复 发表于 2015-5-2 11:11
-mh: 对应FBT的EFI.IMG(可以是其它文件,-udimg:指定) 分区表映射。就是形成一个分区表项,对应于EFI.IMG。 1-4则制定映射到那个分区表项。 auto这是自动找 efi这是按照最有利EFI的方式。  详情 回复 发表于 2015-5-2 10:47
回复

使用道具 举报

 楼主| 发表于 2015-5-2 10:47:25 | 显示全部楼层
527104427 发表于 2015-5-2 04:43
请教下面的含义:

moun  [-mh: ]

-mh: <efi|auto|1-4>
对应FBT的EFI.IMG(可以是其它文件,-udimg:指定) 分区表映射。就是形成一个分区表项,对应于EFI.IMG。
1-4则制定映射到那个分区表项。
auto这是自动找
efi这是按照最有利EFI的方式。

点评

晚上测试一下这种加载方式,之前试过,总有点奇怪,会把U盘后面未分区的给挂出来,EFI.img倒是映射出来了,只是没有盘符。(FBT自带的映射从来没成功过) 既然可以扇区映射,那应该就有取消映射的方法吧?  详情 回复 发表于 2015-5-2 12:26
回复

使用道具 举报

 楼主| 发表于 2015-5-2 11:11:12 | 显示全部楼层
527104427 发表于 2015-5-2 04:43
请教下面的含义:

moun  [-mh: ]

1:
没有 ENVI^ EnviMode=1
就是兼容方式,是懒人的方式:模模糊糊,“我的意思你懂,总之你给我搞定”。
这是一种贪婪解释,猜测尝试各种可能的解释,并反复解释。
%%&Num%%=1 变量
尝试 %&Num% , 没有就继续其它尝试,里发现这有,就解释了%&Num%
比如a

这样就是 %a%=1, 接着解释 %a%。


这种方式问题(1)效率低 (2)逻辑不稳定,和数据是耦合的,不适合编程。


------------------
2:
ENVI^ EnviMode=1这是标准模式。
总是按照确 的规则来解释,和数据无关。而且只解释一次,因而效率高。
%%&Num%%=1
前面%%解释为%
后面%%解释为%
结果为
%&Num%=1
就解释结束了。

要解释2此需要指明,此时巧好2次,不会是1次。
ENVI~ &NumK=C%&Num%.check
首先默认的解释
ENVI~ &NumK=Ca.check
ENVI~ 会再强制解释一次:
ENVI  &NumK=%Ca.check%



ENVI^ EnviMode=1
ENVI C1.check=1
FORX * 1 2 3 4 8 c d f h k l n ,&Num,TEAM ENVI~ &&NumK=C%&Num%.check| IFEX $%&NumK%=1,TEAM MESS OK|| EXIT FORX! MESS ERROR



------------------
3:
还可以 用命令来自动多解释一次:
命令首词中有%,会自动先解释一次。
常用如:%&cmd%
ENVI^ EnviMode=1
ENVI C1.check=1
FORX * 1 2 3 4 8 c d f h k l n ,&Num,
{
  TEAM ENVI &NumX=C%&Num%.check
  SET &cmd=IFEX $%%%&NumX%%%=1
  %&cmd%,TEAM MESS OK| EXIT FORX! MESS ERROR
}

说明:
SET &cmd=IFEX $%%%&NumX%%%=1
前面%%解释为%
后面%%解释为%
中间%&NumX%解释为Ca.check
结果&cmd内容为:
IFEX $%Ca.check%=1
下面那行就为:
IFEX $%Ca.check%=1,TEAM MESS OK| EXIT FORX! MESS ERROR


点评

多谢,正常了!  详情 回复 发表于 2015-5-2 12:23
回复

使用道具 举报

发表于 2015-5-2 12:23:14 | 显示全部楼层
mdyblog 发表于 2015-5-2 11:11
1:
没有 ENVI^ EnviMode=1
就是兼容方式,是懒人的方式:模模糊糊,“我的意思你懂,总之你给我搞定” ...

多谢,正常了!
回复

使用道具 举报

发表于 2015-5-2 12:26:11 | 显示全部楼层
mdyblog 发表于 2015-5-2 10:47
-mh:
对应FBT的EFI.IMG(可以是其它文件,-udimg:指定) 分区表映射。就是形成一个分区表项,对应于EFI ...

晚上测试一下这种加载方式,之前试过,总有点奇怪,会把U盘后面未分区的给挂出来,EFI.img倒是映射出来了,只是没有盘符。(FBT自带的映射从来没成功过)

既然可以扇区映射,那应该就有取消映射的方法吧?

点评

EFI.img倒是映射出来了,只是没有盘符。(FBT自带的映射从来没成功过) ------- 1)这个主要设计目的是UEFI启动。不是挂载到盘符 。 事实上一半是隐藏分区 。 2)这个知识分区。没有分配盘符。  详情 回复 发表于 2015-5-2 12:31
回复

使用道具 举报

 楼主| 发表于 2015-5-2 12:31:58 | 显示全部楼层
527104427 发表于 2015-5-2 12:26
晚上测试一下这种加载方式,之前试过,总有点奇怪,会把U盘后面未分区的给挂出来,EFI.img倒是映射出来了 ...


EFI.img倒是映射出来了,只是没有盘符。(FBT自带的映射从来没成功过)
-------
1)这个主要设计目的是UEFI启动。不是挂载到盘符 。
     事实上一半是隐藏分区 。
2)这个知识分区。没有分配盘符。
    要盘符,另外用SHOW命令。



-uh  就是卸载

点评

多谢老大为我扫盲,以前一直以为分区表映射是将EFI.IMG挂到可见盘符,看来是我弄错了。  详情 回复 发表于 2015-5-2 17:41
回复

使用道具 举报

发表于 2015-5-2 15:01:59 | 显示全部楼层
mdyblog 发表于 2015-5-1 22:56
PECMD2012.1.88.05.60-130810中英.多窗口线程稳定版_win32_64新设计.sfx.7z

PART -fs参数, 新建分区,  ...

太棒了,既然都到这里了,能否再进一步啊?给个格式化参数。比如可以直接操作硬盘分区格式化为什么格式。
DFMT需要指定盘符,能否不分配盘符的情况下直接对采用分区编号0#2执行格式化?

点评

能否不分配盘符的情况下直接对采用分区编号0#2执行格式化? ----- 1: FORMAT.COM 必须要个盘符参数,才能格式化。 如果找到其它第3方软件,另说。 2: SHOW 一下,很难吗? 好像不是什么问题,不值  详情 回复 发表于 2015-5-2 15:07
直接DFMT不久可以了吗? 反正是编程,又不是敲命令行。 多写一行无所谓。  详情 回复 发表于 2015-5-2 15:04
回复

使用道具 举报

 楼主| 发表于 2015-5-2 15:04:53 | 显示全部楼层
ling3882688 发表于 2015-5-2 15:01
太棒了,既然都到这里了,能否再进一步啊?给个格式化参数。比如可以直接操作硬盘分区格式化为什么格式。 ...

直接DFMT不久可以了吗?
反正是编程,又不是敲命令行。
多写一行无所谓。
回复

使用道具 举报

 楼主| 发表于 2015-5-2 15:07:36 | 显示全部楼层
ling3882688 发表于 2015-5-2 15:01
太棒了,既然都到这里了,能否再进一步啊?给个格式化参数。比如可以直接操作硬盘分区格式化为什么格式。 ...

能否不分配盘符的情况下直接对采用分区编号0#2执行格式化?
-----
1:
FORMAT.COM 必须要个盘符参数,才能格式化。
如果找到其它第3方软件,另说。

2:
SHOW  一下,很难吗?
好像不是什么问题,不值得 大费脑筋。

点评

嗯,M大说的在理。  详情 回复 发表于 2015-5-2 15:18
回复

使用道具 举报

发表于 2015-5-2 15:18:41 | 显示全部楼层
mdyblog 发表于 2015-5-2 15:07
能否不分配盘符的情况下直接对采用分区编号0#2执行格式化?
-----
1:

嗯,M大说的在理。
回复

使用道具 举报

发表于 2015-5-2 16:07:20 | 显示全部楼层
本帖最后由 chiannet 于 2015-5-2 18:03 编辑
mdyblog 发表于 2015-5-1 23:04
PART LIST DISK  1,&&V
MSTR &&dsksz=%&V%
CALC #&&off=%dsksz% / 1M * 1M   -  1G

PECMD的帮助中关于swap的用法举例是:  
PART  -up -super -swap:1 1#4  //1#4和1#1交换  

建议改成:
PART  -up -super -swap:1 2#4  //2#4和2#1交换  
不容易歧义。
















点评

呵呵。 好的  详情 回复 发表于 2015-5-2 18:50
回复

使用道具 举报

发表于 2015-5-2 17:41:20 | 显示全部楼层
mdyblog 发表于 2015-5-2 12:31
EFI.img倒是映射出来了,只是没有盘符。(FBT自带的映射从来没成功过)
-------
1)这个主要 ...

多谢老大为我扫盲,以前一直以为分区表映射是将EFI.IMG挂到可见盘符,看来是我弄错了。
回复

使用道具 举报

 楼主| 发表于 2015-5-2 18:50:03 | 显示全部楼层
chiannet 发表于 2015-5-2 16:07
PECMD的帮助中关于swap的用法举例是:  PART  -up -super -swap:1 1#4  //1#4和1#1交换  
建议改成:PAR ...

呵呵。 好的

点评

我想交换hd2上的1和4 套搬例子,写成 PART -up -super -swap:2 1#4 , 结果出了问题,弄了好久才查到应该写成: PART -up -super -swap:1 2#4  详情 回复 发表于 2015-5-2 21:40
回复

使用道具 举报

发表于 2015-5-2 21:40:04 | 显示全部楼层

我想交换hd2上的1和4

套搬例子,写成
PART  -up -super -swap:2 1#4 ,
结果出了问题,弄了好久才查到应该写成:
PART  -up -super -swap:1 2#4

点评

呵呵。 示例改了。  详情 回复 发表于 2015-5-2 22:48
回复

使用道具 举报

 楼主| 发表于 2015-5-2 22:48:30 | 显示全部楼层
chiannet 发表于 2015-5-2 21:40
我想交换hd2上的1和4

套搬例子,写成

呵呵。
示例改了。

点评

请教老大,不知道这样写问题出在哪里?好像不能跳出来 ENVI a= LOOP #1=1, { SED &&b=?,Y:,,C: D: F: J: Y: IFEX $%&b%>0,{ FIND $%a%=,TEAM MESS YES| EXIT LOOP }! { FIND $%a%,TEAM MESS NO| EXIT L  详情 回复 发表于 2015-5-3 11:33
回复

使用道具 举报

发表于 2015-5-3 11:33:26 | 显示全部楼层
mdyblog 发表于 2015-5-2 22:48
呵呵。
示例改了。

请教老大,不知道这样写问题出在哪里?好像不能跳出来

ENVI a=
LOOP #1=1,
{
        SED &&b=?,Y:,,C: D: F: J: Y:
        IFEX $%&b%>0,{ FIND $%a%=,TEAM MESS YES| EXIT LOOP }!    { FIND $%a%<>,TEAM MESS NO| EXIT LOOP }
}

点评

ENVI a= LOOP #1=1, { SED &&b=?,Y:,,C: D: F: J: Y: IFEX $%&b%>0, { FIND $%a%=,TEAM MESS YES| EXIT LOOP }! { FIND $%a%,TEAM MESS NO| EXIT LOOP }  详情 回复 发表于 2015-5-3 11:42
回复

使用道具 举报

 楼主| 发表于 2015-5-3 11:42:55 | 显示全部楼层
527104427 发表于 2015-5-3 11:33
请教老大,不知道这样写问题出在哪里?好像不能跳出来

ENVI a=


ENVI a=
LOOP #1=1,
{
        SED &&b=?,Y:,,C: D: F: J: Y:
        IFEX $%&b%>0,
        { FIND $%a%=,TEAM MESS YES| EXIT LOOP
        }!
       { FIND $%a%<>,TEAM MESS NO| EXIT LOOP
       }
}
回复

使用道具 举报

发表于 2015-5-4 12:03:54 | 显示全部楼层
本帖最后由 ling3882688 于 2015-5-4 12:07 编辑

M大,TIPS命令老是控制不好显示时间,比如:
TEAM TIPS >请稍等!<,正在安装001!...,10000,4,Shell32.dll#238|WAIT 3000
EXEC =%CurDir%\001.EXE
TEAM TIPS >请稍等!<,正在安装002!...,10000,4,Shell32.dll#238|WAIT 3000
EXEC =%CurDir%\002.EXE
TEAM TIPS >提示信息!<,安装完成!...,10000,4,Shell32.dll#238|WAIT 3000

如何能让TIPS消息框一直显示直到EXE安装完?比如这个001.EXE安装时间可能需要50秒或者更长。

点评

试试:  详情 回复 发表于 2015-5-4 13:31
回复

使用道具 举报

 楼主| 发表于 2015-5-4 13:31:59 | 显示全部楼层
本帖最后由 mdyblog 于 2015-5-4 13:33 编辑

ling3882688 发表于 2015-5-4 12:03
M大,TIPS命令老是控制不好显示时间,比如:
TEAM TIPS >请稍等!请稍等!提示信息!


试试:
  1. TIPS >请稍等!<,正在安装001!...,100000,4,Shell32.dll#238
  2. EXEC =%CurDir%\001.EXE
  3. TIPS *
  4. TIPS >请稍等!<,正在安装002!...,100000,4,Shell32.dll#238
  5. EXEC =%CurDir%\002.EXE
  6. TIPS *
  7. TEAM TIPS >提示信息!<,安装完成!...,100000,4,Shell32.dll#238|WAIT 3000
  8. TIPS *
复制代码

点评

谢M大。  详情 回复 发表于 2015-5-4 14:57
回复

使用道具 举报

发表于 2015-5-4 14:57:23 | 显示全部楼层

谢M大。
回复

使用道具 举报

 楼主| 发表于 2015-5-4 21:03:46 | 显示全部楼层
本帖最后由 mdyblog 于 2015-5-4 21:56 编辑

PECMD需要内置 IMDISK吗?
没有安装IMDISK也能直接使用(已经安装了就用安装的版本)。
就是有些大。

点评

FILE F:\TEMP\TMP2\2557823063424205564\new.exe>>%CurDir%\_new.exe 这条命令失败,new.exe移动的地方不对, F:\TEMP\TMP2\2557823063424205564\new.exe 被移到了 F:\TEMP\TMP2\2557823063424205564\_new.e  详情 回复 发表于 2015-5-5 13:56
回复

使用道具 举报

发表于 2015-5-5 13:56:45 | 显示全部楼层
mdyblog 发表于 2015-5-4 21:03
PECMD需要内置 IMDISK吗?
没有安装IMDISK也能直接使用(已经安装了就用安装的版本)。
就是有些大。

FILE F:\TEMP\TMP2\2557823063424205564\new.exe>>%CurDir%\_new.exe

这条命令失败,new.exe移动的地方不对,
F:\TEMP\TMP2\2557823063424205564\new.exe
被移到了
F:\TEMP\TMP2\2557823063424205564\_new.exe
而不是移动到
%CurDir%\_new.exe

点评

那个是重命名。 应该: FILE F:\TEMP\TMP2\2557823063424205564\new.exe->%CurDir%\_new.exe  详情 回复 发表于 2015-5-5 14:16
回复

使用道具 举报

 楼主| 发表于 2015-5-5 14:16:11 | 显示全部楼层
527104427 发表于 2015-5-5 13:56
FILE F:\TEMP\TMP2\2557823063424205564\new.exe>>%CurDir%\_new.exe

这条命令失败,new.exe移动的地 ...

那个是重命名。
应该:
FILE F:\TEMP\TMP2\2557823063424205564\new.exe->%CurDir%\_new.exe

点评

多谢老大,原来是我搞晕了。 不知道导出内置的图标和版本信息能再处理一下吗?就剩这两项有问题了  详情 回复 发表于 2015-5-5 14:54
回复

使用道具 举报

发表于 2015-5-5 14:54:30 | 显示全部楼层
mdyblog 发表于 2015-5-5 14:16
那个是重命名。
应该:
FILE F:\TEMP\TMP2\2557823063424205564\new.exe->%CurDir%\_new.exe

多谢老大,原来是我搞晕了。

不知道导出内置的图标和版本信息能再处理一下吗?就剩这两项有问题了

点评

用RESEDIT不行吗?  详情 回复 发表于 2015-5-5 15:10
回复

使用道具 举报

 楼主| 发表于 2015-5-5 15:10:45 | 显示全部楼层
527104427 发表于 2015-5-5 14:54
多谢老大,原来是我搞晕了。

不知道导出内置的图标和版本信息能再处理一下吗?就剩这两项有问题了

用RESEDIT不行吗?
回复

使用道具 举报

发表于 2015-5-6 07:50:10 | 显示全部楼层
本帖最后由 小絔小小小 于 2015-5-6 09:26 编辑

请问一下 2012.1.88.05.60-130810这一版的 我用FILE命令复制和重命名出来的文件都成0字节了

刚刚又试了一下 原来是因为我是从cmd运行的参数导致的
回复

使用道具 举报

发表于 2015-5-6 11:45:32 | 显示全部楼层
  1. `UDM或UD隐藏区装载外置
  2. _SUB LOAD_UDMHIDE_OP
  3. PART LIST disk,&&disks
  4. FORX * %&disks%,&&hd,
  5. {
  6.         ENVI &OPD=B:\H3PE
  7.         MOUN -udm -mhide \\.\PhysicalDrive%&hd% B:
  8.         IFEX %&OPD%\WINPE.INI,EXIT FORX
  9.         ENVI OPD=Z:
  10.         MOUN  -udm -mhide -udfs -udm- \\.\PhysicalDrive%&hd% Z:
  11.         IFEX %&OPD%\WINPE.INI,EXIT FORX
  12. }
  13. IFEX %&OPD%\WINPE.INI,LOAD %&OPD%\WINPE.INI
  14. _END
复制代码


只要将其中的&OPD改为OPD就是正常的。用PE内部变量难道不行?

点评

这样就好: `UDM或UD隐藏区装载外置 _SUB LOAD_UDMHIDE_OP PART LIST disk,&&disks FORX * %&disks%,&&hd, {* ENVI &OPD=B:\H3PE MOUN -udm -mhide \\.\PhysicalDrive%&  详情 回复 发表于 2015-5-6 12:15
回复

使用道具 举报

发表于 2015-5-6 12:15:01 | 显示全部楼层
hhh333 发表于 2015-5-6 11:45
只要将其中的&OPD改为OPD就是正常的。用PE内部变量难道不行?

这样就好:

`UDM或UD隐藏区装载外置

_SUB LOAD_UDMHIDE_OP

PART LIST disk,&&disks

FORX * %&disks%,&&hd,

{*

        ENVI &OPD=B:\H3PE

        MOUN -udm -mhide \\.\PhysicalDrive%&hd% B:

        IFEX %&OPD%\WINPE.INI,EXIT FORX

        ENVI &OPD=Z:

        MOUN  -udm -mhide -udfs -udm- \\.\PhysicalDrive%&hd% Z:

        IFEX %&OPD%\WINPE.INI,EXIT FORX

}

IFEX %&OPD%\WINPE.INI,LOAD %&OPD%\WINPE.INI

_END

点评

对。而且是否用PE变量前后要一致。 完整点还要初始化一下: `UDM或UD隐藏区装载外置  详情 回复 发表于 2015-5-6 14:04
回复

使用道具 举报

 楼主| 发表于 2015-5-6 14:04:44 | 显示全部楼层
本帖最后由 mdyblog 于 2015-5-6 15:14 编辑
527104427 发表于 2015-5-6 12:15
这样就好:

`UDM或UD隐藏区装载外置


对。而且是否用PE变量前后要一致。

完整点还要初始化一下:
`UDM或UD隐藏区装载外置

  1. _SUB LOAD_UDMHIDE_OP
  2. ENVI  &&OPD=:::     //初始化
  3. PART LIST disk,&&disks
  4. FORX * %&disks%,&&hd,
  5. {*
  6.         ENVI &OPD=B:\H3PE
  7.         MOUN -udm -mhide \\.\PhysicalDrive%&hd% B:
  8.         IFEX %&OPD%\WINPE.INI,EXIT FORX
  9.         ENVI &OPD=Z:
  10.         MOUN  -udm -mhide -udfs -udm- \\.\PhysicalDrive%&hd% Z:
  11.         IFEX %&OPD%\WINPE.INI,EXIT FORX
  12. }
  13. IFEX %&OPD%\WINPE.INI,LOAD %&OPD%\WINPE.INI
  14. _END
复制代码



怎么没有卸载啊?  如果不是的话, 是不是要卸载啊?

点评

请教老大,下面三行代码有何不同? ENVI &&OPD=::: ENVI &&OPD= ENVI &OPD=  详情 回复 发表于 2015-5-6 16:45
我前面提问时掉了一个&,实际上是一致的。但确实是不行的。 确实象LZ所说加上ENVI &&OPD= 进行初始化就可以了 说明前面的代码的问题主要是没有初始化。不知有什么说法。不初始化PE变量就不能用吗?如下将第一  详情 回复 发表于 2015-5-6 16:09
回复

使用道具 举报

发表于 2015-5-6 16:09:33 | 显示全部楼层
本帖最后由 hhh333 于 2015-5-6 16:11 编辑
mdyblog 发表于 2015-5-6 14:04
对。而且是否用PE变量前后要一致。

完整点还要初始化一下:


我前面提问时掉了一个&,实际上是一致的。但确实是不行的。
确实象LZ所说加上ENVI  &&OPD=
进行初始化就可以了

说明前面的代码的问题主要是没有初始化。如下将第2行挂起,挂载Z:是成功的,但不执行Z:\winpe.ini(这个文件明明是有的)

  1. _SUB LOAD_UDMHIDE_OP
  2. ·ENVI &&OPD=
  3. PART LIST disk,&&disks
  4. FORX * %&disks%,&&hd,
  5. {
  6.         ENVI &OPD=B:\H3PE
  7.         MOUN -udm -mhide \\.\PhysicalDrive%&hd% B:
  8.         IFEX %&OPD%\WINPE.INI,EXIT FORX
  9.         ENVI &OPD=Z:
  10.         MOUN  -udm -mhide -udfs -udm- \\.\PhysicalDrive%&hd% Z:
  11.         IFEX %&OPD%\WINPE.INI,EXIT FORX
  12. }
  13. IFEX %&OPD%\WINPE.INI,LOAD %&OPD%\WINPE.INI
  14. _END
复制代码


不知有什么说法。不初始化PE变量就不能用吗?

点评

{ 后面有个符号 * 没有这个符号,{ }里面的PE变量会自动销毁,加了就是this调用,不销毁PE变量  详情 回复 发表于 2015-5-6 16:43
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-17 21:29

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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