无忧启动论坛

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

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

    [复制链接]
15151#
发表于 2020-3-25 16:25:16 | 只看该作者
hhh333 发表于 2020-3-25 10:23
试了一下,建立VHD的Y盘,命令如下:
MOUN-vhd -c %Windir%\System32\Y.vhd,4,Y:
几个问题:

刚才试了,似乎前面反映的不对
MOUN-vhd -c %Windir%\System32\Y.vhd,4,Y:
还是不能建立,出现参数错误
MOUN-vhd -c %Windir%\System32\Y.vhd,4M
这个可以建立文件,但不知道怎么挂载为Y盘并格式化

点评

1) ret 返回 结果。 2) 挂载命令, 热天返回磁盘号。 后面面用 PART -fs 创建分区 DFMT 格式化分区。  详情 回复 发表于 2020-3-28 06:36
回复

使用道具 举报

15152#
发表于 2020-3-26 17:26:08 | 只看该作者
  1. CALL @MAIN
  2. _SUB MAIN,W800H600
  3.     CHEK Check1,L180T336W100H20,可写挂载,,1
  4.     ENVI @this.Visible=1
  5.     ENVI @Check1.Enable=0
  6.     WAIT 1000
  7.     TEAM ENVI @Check1.percent=100F:0xFFFFFF:0xFFFFFF:0x000000:
  8. _END
复制代码
先diable了还是会崩溃。

点评

可能 CHECK不支持。 CHECK 比较特别,在打勾外,好大的区域 还归它管。 下面是EDIT。 CALL @MAIN _SUB MAIN,W800H600 EDIT Check1,L180T336W100H40,可写挂载,,1 // CHEK Check1,L180T336W100H20,可  详情 回复 发表于 2020-3-28 06:44
回复

使用道具 举报

15153#
发表于 2020-3-26 20:12:30 | 只看该作者
本帖最后由 红毛樱木 于 2020-3-26 23:43 编辑

搞错了,
回复

使用道具 举报

15154#
 楼主| 发表于 2020-3-28 06:23:27 | 只看该作者
本帖最后由 mdyblog 于 2020-3-28 06:34 编辑
hhh333 发表于 2020-3-25 10:23
试了一下,建立VHD的Y盘,命令如下:
MOUN-vhd -c %Windir%\System32\Y.vhd,4,Y:
几个问题:

创建:
moun-vhd -c a.vhd,1G,,ret      //大VHD 可 用 -d 创建动态VHD,很快,和大小无关。
mess %ret%
//0 0
大小 1G

挂载:moun-vhd  a.vhd,,,ret
mess %ret%
//1 0

卸载:
moun-vhd -u  a.vhd,

北京开禁了,在忙着返回北京。
回复

使用道具 举报

15155#
 楼主| 发表于 2020-3-28 06:33:21 | 只看该作者
WAIGO 发表于 2020-3-25 15:20
非常感谢!改这两处之后,果然解决问题了。还有个问题就是,原本包含在 PECMD.EXE 内的 IMDISK 版本是 " ...

我把新近下载的 "88.05.82Stable PECMD.EXE" 改用了无Imd版,然后自行换用了 2.0.10 版的 IMDISK 文件(如图),奇怪的是 PE 启动后,竟然连 Y: 盘都不能制造了。
-------------------
如果使用外置IMD
则 注册表要完全,文件完全且路径正确。
简单来说,就是已经正确安装了IMD,二不是只是把IMD的问句放在那儿。

点评

2.0.10 版的 IMDISK 文件齐全没有问题,路径正确也可以肯定。但是注册表就不知道要修改哪里,什盼告知。另外,私信看了吗?等了好几天都不见回复呢。  详情 回复 发表于 2020-3-31 00:30
回复

使用道具 举报

15156#
 楼主| 发表于 2020-3-28 06:36:52 | 只看该作者
hhh333 发表于 2020-3-25 16:25
刚才试了,似乎前面反映的不对
MOUN-vhd -c %Windir%\System32\Y.vhd,4,Y:
还是不能建立,出现参数错误 ...

1)
ret  返回 结果。


2)
挂载命令, 热天返回磁盘号。
后面面用 PART -fs 创建分区
DFMT 格式化分区。

点评

我昨天试了下挂载vhd,不出盘符,很奇怪。 回头我再确认下  详情 回复 发表于 2020-3-28 11:02
回复

使用道具 举报

15157#
 楼主| 发表于 2020-3-28 06:44:57 | 只看该作者
红毛樱木 发表于 2020-3-26 17:26
先diable了还是会崩溃。

可能 CHECK不支持。 CHECK 比较特别,在打勾外,好大的区域 还归它管。

下面是EDIT。

CALL @MAIN
_SUB MAIN,W800H600
    EDIT  Check1,L180T336W100H40,可写挂载,,1
//    CHEK Check1,L180T336W100H20,可写挂载,,1
    ENVI @this.Visible=1
    ENVI @Check1.Enable=0
    WAIT 10
    ENVI @Check1.percent=70:0xFF00:0xFF:0xFF0000:XXXX
_END


点评

又发现了几个问题: 1. LIST &L2,L29T27W290H100,||a||b|c|d,,, 按道理说,|和|之间没有内容,应该是建立一个空行。实际是被忽略了。 2. ENVI &Char= ENVI @&L2.ADD=%&Char% 这个也  详情 回复 发表于 2020-3-28 20:42
CHEK和GROU这两个不行。其他的暂时没测试。如果能调试好能用.percent这个就好了。  详情 回复 发表于 2020-3-28 10:58
回复

使用道具 举报

15158#
发表于 2020-3-28 10:58:08 | 只看该作者
mdyblog 发表于 2020-3-28 06:44
可能 CHECK不支持。 CHECK 比较特别,在打勾外,好大的区域 还归它管。

下面是EDIT。

CHEK和GROU这两个不行。其他的暂时没测试。如果能调试好能用.percent这个就好了。

点评

CHEK和GROU这两个: https://www.lanzous.com/iaqj4ih[/backcolor] [/backcolor]  详情 回复 发表于 2020-3-28 17:42
回复

使用道具 举报

15159#
发表于 2020-3-28 11:02:19 来自手机 | 只看该作者
mdyblog 发表于 2020-3-28 06:36
1)
ret  返回 结果。


我昨天试了下挂载vhd,不出盘符,很奇怪。
回头我再确认下

点评

不能隐藏分区  详情 回复 发表于 2020-3-28 17:42
回复

使用道具 举报

15160#
 楼主| 发表于 2020-3-28 17:42:17 | 只看该作者
红毛樱木 发表于 2020-3-28 10:58
CHEK和GROU这两个不行。其他的暂时没测试。如果能调试好能用.percent这个就好了。


CHEK和GROU这两个:
https://www.lanzous.com/iaqj4ih


回复

使用道具 举报

15161#
 楼主| 发表于 2020-3-28 17:42:44 | 只看该作者
红毛樱木 发表于 2020-3-28 11:02
我昨天试了下挂载vhd,不出盘符,很奇怪。
回头我再确认下

不能隐藏分区

点评

//MOUN-vhd [-c[x] -d -u -r] [-s:扇区大小] VHD路径,[Mount目标目录|大小],,[返回名] MOUN-vhd -c %&SystemROOT%\System32\Y.VHD,400M,,&Cret MOUN-vhd %&SystemROOT%\System32\Y.VHD,Y:,,&Mret //MESS. %&Mret  详情 回复 发表于 2020-3-28 18:40
是X盘里创建的VHD,我试下 。  详情 回复 发表于 2020-3-28 18:09
回复

使用道具 举报

15162#
发表于 2020-3-28 18:09:29 | 只看该作者

是X盘里创建的VHD,我试下 。
回复

使用道具 举报

15163#
发表于 2020-3-28 18:40:27 | 只看该作者

//MOUN-vhd  [-c[x] -d -u -r] [-s:扇区大小] VHD路径,[Mount目标目录|大小],[ID],[返回名]
MOUN-vhd -c %&SystemROOT%\System32\Y.VHD,400M,,&Cret
MOUN-vhd %&SystemROOT%\System32\Y.VHD,Y:,,&Mret
//MESS. <%&Cret%>%&Mret%
MSTR * &&hd=<1>&Mret
IFEX $%&&hd%>=0,
{*
    PART -xup -super -force -mbr init %&&hd%
    PART -fs -super -force -xup  %&&hd%#1 a 0x0B 0 400M
    SHOW * %&&hd%#1,Y:
    DFMT Y:,FAT32,Y_VHD
}
MESS. OVER

---------------------------
按您说的可以了,发出来给需要的人。(这里的Y:盘可能锁定不了,需要自己处理一下盘符问题)

点评

这搞起比diskpart还要复杂,MOUN-vhd %&SystemROOT%\System32\Y.VHD,Y:,,&Mret这一句这个Y:没有用,还不如不写。反正没有分区时不会有盘符。我觉得应该强化一下命令MOUN-vhd -c %&SystemROOT%\System32\Y.VHD,400M,  详情 回复 发表于 2020-3-28 20:31
回复

使用道具 举报

15164#
发表于 2020-3-28 20:31:46 | 只看该作者
本帖最后由 hhh333 于 2020-3-28 20:33 编辑
红毛樱木 发表于 2020-3-28 18:40
//MOUN-vhd  [-c[x] -d -u -r] [-s:扇区大小] VHD路径,[Mount目标目录|大小],,[返回名]
MOUN-vhd -c %&S ...

写这么多实在不好懂,这搞起比diskpart还要复杂,MOUN-vhd %&SystemROOT%\System32\Y.VHD,Y:,,&Mret这一句这个Y:没有用,还不如不写。反正没有分区时不会有盘符。我觉得应该强化一下命令MOUN-vhd -c %&SystemROOT%\System32\Y.VHD,400M,Y:,&Cret就行了,洗剪吹一条龙。再加个参数格式化就更好,不加也不要紧,可以视%&Cret%是否正常再发DFMT命令就行了。逻辑上也清晰。

点评

万一人家的vhd想搞几个分区呢  详情 回复 发表于 2020-3-28 21:16
回复

使用道具 举报

15165#
发表于 2020-3-28 20:42:14 | 只看该作者
mdyblog 发表于 2020-3-28 06:44
可能 CHECK不支持。 CHECK 比较特别,在打勾外,好大的区域 还归它管。

下面是EDIT。

又发现了几个问题:
1.
    LIST &L2,L29T27W290H100,||a||b|c|d,,,  
    按道理说,|和|之间没有内容,应该是建立一个空行。实际是被忽略了。

2.
    ENVI &Char=
    ENVI @&L2.ADD=%&Char%
    这个也应该是增加一个空行,实际却失败,被自动忽略了。
    用下面的方法可以增加一个空行:
    ENVI &Char=
    ENVI @&L2.ID=?&ID
    ENVI &::CB_INSERTSTRING=0x014A
    ENVI @@SENDMSG=%&ID%;%&CB_INSERTSTRING%;0;$%&Char%

3.
    ENVI @&L2.Query=;&A
    假如第一行是空行,后面的非空,这时第一行也被自动丢弃了。

4.
    SET$ &NL=0D 0A
    ENVI &A=12%&NL%
    READ -*,0,&B,&A
    READ -*,-1,&C,&A
    MESS. [行数:%&C%][最后一行:%&B%]  //结果是1和12,自动把换行符丢掉了,实际应该为2和空

5.
    FORX *NL &A,&B  也会有上面第4点说的问题,自动把换行符弄丢了。





点评

LIST &L2,L29T27W290H100,||a||b|c|d,,, 按道理说,|和|之间没有内容,应该是建立一个空行。实际是被忽略了。 --------------- 兼容4.0 扩展方式,支持空行。  详情 回复 发表于 2020-3-29 00:14
回复

使用道具 举报

15166#
发表于 2020-3-28 20:48:12 | 只看该作者
好了,又记不得“{*”加这个星号是啥子意思了。
回复

使用道具 举报

15167#
发表于 2020-3-28 21:16:52 来自手机 | 只看该作者
hhh333 发表于 2020-3-28 20:31
写这么多实在不好懂,这搞起比diskpart还要复杂,MOUN-vhd %&SystemROOT%\System32\Y.VHD,Y:,,&Mret这一 ...

万一人家的vhd想搞几个分区呢

点评

{ 表示 代码段 为一新建 PE变量栈, 退出时,新栈上新建的变量自动抛弃。 {* 则用原来 PE变量栈,退出本段, 不引起 PE变量抛弃。  详情 回复 发表于 2020-3-29 00:17
回复

使用道具 举报

15168#
 楼主| 发表于 2020-3-29 00:14:18 | 只看该作者
527104427 发表于 2020-3-28 20:42
又发现了几个问题:
1.
    LIST &L2,L29T27W290H100,||a||b|c|d,,,  

LIST &L2,L29T27W290H100,||a||b|c|d,,,  
    按道理说,|和|之间没有内容,应该是建立一个空行。实际是被忽略了。
---------------
兼容4.0

扩展方式,支持空行。

点评

请教老大,通过以下方式改变选中项之后,怎么通知父窗口刷新&L2的值? ENVI @&L2.ID=?&ID ENVI &::LB_SETCURSEL=0x0186 ENVI @@SENDMSG=%&ID%;%&LB_SETCURSEL%;1;0 查了一下,貌似是要用CBN_SEL  详情 回复 发表于 2020-3-29 01:17
回复

使用道具 举报

15169#
 楼主| 发表于 2020-3-29 00:17:43 | 只看该作者
红毛樱木 发表于 2020-3-28 21:16
万一人家的vhd想搞几个分区呢

{
表示 代码段 为一新建 PE变量栈, 退出时,新栈上新建的变量自动抛弃。
{*
则用原来 PE变量栈,退出本段, 不引起 PE变量抛弃。
回复

使用道具 举报

15170#
发表于 2020-3-29 01:17:41 | 只看该作者
本帖最后由 527104427 于 2020-3-29 01:27 编辑
mdyblog 发表于 2020-3-29 00:14
LIST &L2,L29T27W290H100,||a||b|c|d,,,  
    按道理说,|和|之间没有内容,应该是建立一个空行。实际 ...

请教老大,通过以下方式改变选中项之后,怎么通知父窗口刷新&L2的值?
    ENVI @&L2.ID=?&ID
    ENVI &::CB_SETCURSEL=0x014E
    ENVI @@SENDMSG=%&ID%;%&CB_SETCURSEL%;1;0


比如下面的示例:
ENVI &::CB_SETCURSEL=0x014E
CALL @MAIN

_SUB MAIN,W363H172,
        LIST &LIST1,L29T27W290H100,||a||b|c|d,,,
        ITEM ITEM1,L171T81W116H30,改变选中项,CALL change,
_END

_SUB change
        ENVI @&LIST1.ID=?&ID
        ENVI @@SENDMSG=%&ID%;%&CB_SETCURSEL%;2;0
        MESS. &LIST1值:[%&LIST1%]  //&LIST1仍为空,正确应该是c
_END






点评

ENVI &::CB_SETCURSEL=0x014E ENVI &::CBN_SELENDOK=0x0009 ENVI &::CBN_EDITCHANGE=0x0005 //消息编辑,也支持 ENVI &::WM_COMMAND=0x0111 CALL @MAINw _SUB MAINw,W363H172, LIST &LIST1,L29T27W2  详情 回复 发表于 2020-3-31 01:06
查了下资料,好像还需要CBN_SELCHANGE 消息。  详情 回复 发表于 2020-3-29 11:47
回复

使用道具 举报

15171#
发表于 2020-3-29 11:47:07 | 只看该作者
本帖最后由 红毛樱木 于 2020-3-29 11:49 编辑
527104427 发表于 2020-3-29 01:17
请教老大,通过以下方式改变选中项之后,怎么通知父窗口刷新&L2的值?
    ENVI @&L2.ID=?&ID
    ENVI ...

查了下资料,好像还需要CBN_SELCHANGE消息。-----------------------
CB_SETCURSEL和CBN_SELCHANGE都不支持XP

点评

这个我也查到了,就是不知道怎么用,试不出来。  详情 回复 发表于 2020-3-29 12:18
回复

使用道具 举报

15172#
发表于 2020-3-29 12:18:27 | 只看该作者
红毛樱木 发表于 2020-3-29 11:47
查了下资料,好像还需要CBN_SELCHANGE消息。-----------------------
CB_SETCURSEL和CBN_SELCHANGE都不 ...

这个我也查到了,就是不知道怎么用,试不出来。
回复

使用道具 举报

15173#
发表于 2020-3-29 20:18:10 | 只看该作者
报告一个情况,我一直用下述命令来装载外置,也比较正常
MOUN-udm -findboot -CurDrvR -mall -mhide -u+ -udfs -nbrd -udimg:H3PE/OP.IMG -udimg:udext.img -Checkfile:H3PE/WINPE.INI -Checkfile:BOOT/H3_3PEIN.WIM -ret:&&v \\.\PhysicalDrive* B-
但在新的Win10中,U+或者手工隐藏的U盘找不到外置,经过仔细查看说明,我加了个-mnorhide 参数似乎就可以了,不知道是个啥子情况。

我大致这样理解,Win10中U+或手工隐藏的区均被视为普通隐藏,而在其他较早期的系统中,U+就是U+,所以有不有这个参数都会被加载

点评

新版win10会自动显示那个分区的吧  详情 回复 发表于 2020-3-29 21:07
回复

使用道具 举报

15174#
发表于 2020-3-29 21:07:38 来自手机 | 只看该作者
hhh333 发表于 2020-3-29 20:18
报告一个情况,我一直用下述命令来装载外置,也比较正常
MOUN-udm -findboot -CurDrvR -mall -mhide -u+ - ...

新版win10会自动显示那个分区的吧
回复

使用道具 举报

15175#
发表于 2020-3-30 23:36:36 | 只看该作者
本帖最后由 红毛樱木 于 2020-3-31 01:36 编辑

TABL的
ENVI @名称.Color=?列号;[变量名][;变量名]来查;无则返空
可用"ENVI @名称.Color=?行号.列号;变量名;变量名; 来查询,无则返空。
两种方式的颜色查询都无效。
回复

使用道具 举报

15176#
发表于 2020-3-31 00:30:27 | 只看该作者
mdyblog 发表于 2020-3-28 06:33
我把新近下载的 "88.05.82Stable PECMD.EXE" 改用了无Imd版,然后自行换用了 2.0.10 版的 IMDISK 文件(如 ...

2.0.10 版的 IMDISK 文件齐全没有问题,路径正确也可以肯定。但是注册表就不知道要修改哪里,什盼告知。另外,私信看了吗?等了好几天都不见回复呢。
回复

使用道具 举报

15177#
发表于 2020-3-31 00:46:48 来自手机 | 只看该作者
WAIGO 发表于 2020-3-31 00:30
2.0.10 版的 IMDISK 文件齐全没有问题,路径正确也可以肯定。但是注册表就不知道要修改哪里,什盼告知。 ...

用不带imdisk版本的pecmd就行了呗

点评

多谢关注!改好了……  详情 回复 发表于 2020-3-31 22:09
回复

使用道具 举报

15178#
 楼主| 发表于 2020-3-31 01:06:31 | 只看该作者
527104427 发表于 2020-3-29 01:17
请教老大,通过以下方式改变选中项之后,怎么通知父窗口刷新&L2的值?
    ENVI @&L2.ID=?&ID
    ENVI ...

ENVI &::CB_SETCURSEL=0x014E
ENVI &::CBN_SELENDOK=0x0009
ENVI &::CBN_EDITCHANGE=0x0005 //消息编辑,也支持
ENVI &::WM_COMMAND=0x0111
CALL @MAINw

_SUB MAINw,W363H172,
        LIST &LIST1,L29T27W290H100,||a||b|c|d,,,
        ITEM ITEM1,L171T81W116H30,改变选中项,CALL change,
        ENVI @&LIST1.ID=?&&LIST1_WID;&&LIST1_ID
        CALC -base=16 #&&LIST1_SELENDOK=%&CBN_SELENDOK% * 0x10000  +   %&LIST1_ID%
_END

_SUB change
        ENVI @@SENDMSG=%&LIST1_WID%;%&CB_SETCURSEL%;2;0
        ENVI @this.SENDMSG=%&WM_COMMAND%;%&LIST1_SELENDOK%;%&LIST1_WID%
        //WAIT 0.99  //等待更新
        MESS. &LIST1值:[%&LIST1%]  //&LIST1,正确,是c
_END



点评

多谢老大,完美!  详情 回复 发表于 2020-3-31 09:29
回复

使用道具 举报

15179#
 楼主| 发表于 2020-3-31 01:07:58 | 只看该作者
WAIGO 发表于 2020-3-31 00:30
2.0.10 版的 IMDISK 文件齐全没有问题,路径正确也可以肯定。但是注册表就不知道要修改哪里,什盼告知。 ...

找一个同样版本的PE, 导出相关 注册表。
回复

使用道具 举报

15180#
 楼主| 发表于 2020-3-31 01:21:14 | 只看该作者
WAIGO 发表于 2020-3-31 00:30
2.0.10 版的 IMDISK 文件齐全没有问题,路径正确也可以肯定。但是注册表就不知道要修改哪里,什盼告知。 ...

很老的PECMD包中有IMD注册表。
从正常系统导一个出来,就可以。

这个好像可以,试试: imd.reg.zip (629 Bytes, 下载次数: 1)

点评

报告一个BUG: ※查询父进程号: ENVI ?返回名=PPID,进程号 此命令查不到SysWOW64或system32目录里面运行的进程,始终返回0  详情 回复 发表于 2020-4-1 19:25
改好了。六天前的私信恳请看一看是否可行。非常感谢!  详情 回复 发表于 2020-3-31 22:07
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2026-1-21 05:06

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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