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

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

   火... [复制链接]
发表于 2013-2-12 21:37:21 | 显示全部楼层
原帖由 clonecd 于 2013-2-12 20:40 发表


memmove 是要好一点,内存重叠也无所谓。

现在想提一个迫切的问题,由于UEFI主板,X64系统,GPT磁盘已大行其道,因此开发64位版本的PECMD2012已势在必行。
虽然X64系统也能跑32位程序,但是在性能上大打 ...

呵呵,同意

现在64位PE就是欠了一个64位版的PECMD2012
回复

使用道具 举报

发表于 2013-2-13 11:33:46 | 显示全部楼层
原帖由 clonecd 于 2013-2-12 20:42 发表
7ZIP的自解压在一些Native PE中会导致死机的哦。

7zip的自解压是要带命令参数的才能自解压的,不带自解压命令参数进行自解压会要求输入自解压路径的!
回复

使用道具 举报

 楼主| 发表于 2013-2-13 18:29:37 | 显示全部楼层

替代7z.exe 的7z.wcs

7z.wcs:
//替代7z.exe
ENVI &&&ENviMode=1
PATH @%&__OldDir%   //恢复到原始目录   
ENVI &&&Alias *opt SevenZip=CALL $**ret:*  %&CurDir%\7_zip32.dll,SevenZip,
_SUB  7zip
    ENVI &&wcmd=%*  
    ENVI-tom &&acmd=&wcmd
    ENVI-addr &&acmdadr=&acmd
    ENVI#% &&buf=*32768  
    ENVI-addr &&bufadr=&buf
    SevenZip &&ret,#%__WINID%,#%&acmdadr%,#%&bufadr%,#32768    //
_END
CALL 7Zip %*

//例如 pecmd load 7z.wcs x -y  test.7z
// -hide 则不显示界面
如果执行了WCS关联.cmd  

可以直接: 7z.wcs x -y  test.7z
回复

使用道具 举报

发表于 2013-2-14 08:16:37 | 显示全部楼层

回复 #1 mdyblog 的帖子

很高深,看不懂,人气高,顶。
回复

使用道具 举报

发表于 2013-2-14 13:56:04 | 显示全部楼层
原帖由 mdyblog 于 2013-2-13 18:29 发表
7z.wcs:
//替代7z.exe
ENVI &&&ENviMode=1
PATH @%&__OldDir%   //恢复到原始目录   
ENVI &&&Alias *opt SevenZip=CALL $**ret:*  %&CurDir%\7_zip32.dll,SevenZip,
_SUB  7zip
    ENVI &&wcmd=%*  
...

---------------------------
终于有些空闲了,上来看了看。首先谢谢楼主的解释,另请教楼主一些问题:
1、DEVI命令在找到匹配的驱动的时候,是否有特定的变量来存放信息的呢?我的思路是通过这个返回信息来判断驱动安装是否正确,以待其它的需要。如果没有,可以通过什么方法来获得?试过用定时器,但很难,也不好掌握时间,况且很吃资源的这样。或是否可以请楼主在这个命令中增加这个信息返回机制?
2、我想用SUBJ、RAMD、DFMT命令组合虚拟一个64MB的NTFS的磁盘,该如何写?尝试了很多次都失败了(不用diskpart,我知道可以成功的,我只想用pecmd试试怎做?)
3、新版的命令器已经替换测试,启动都成功了,没有出现大的BUG。测试日志就不贴了,谢谢楼主的更新和无私的奉献。

祝新年万事如意!!
回复

使用道具 举报

 楼主| 发表于 2013-2-14 15:22:38 | 显示全部楼层
原帖由 2012yws@ 于 2013-2-14 13:56 发表
---------------------------
终于有些空闲了,上来看了看。首先谢谢楼主的解释,另请教楼主一些问题:
1、DEVI命令在找到匹配的驱动的时候,是否有特定的变量来存放信息的呢?我的思路是通过这个返回信息来 ...


A2:
RAMD ImDisk,L64,NTFS,Z:,ImDisk1
就可以得到 64M 的NTFS的虚拟盘Z:

A1:

PECMD2012.1.73.1-130214.多窗口线程孵化版_win32.sfx.zip

DEVI开关  *retid:变量名     返回本次安装驱动的设备的ID。

如:
DEVI *retid:&&IDS $D:\DRV.CAB

MESS 【%&IDS%】



[ 本帖最后由 mdyblog 于 2013-2-14 18:57 编辑 ]
回复

使用道具 举报

发表于 2013-2-15 12:06:31 | 显示全部楼层
原帖由 mdyblog 于 2013-2-14 15:22 发表


A2:
RAMD ImDisk,L64,NTFS,Z:,ImDisk1
就可以得到 64M 的NTFS的虚拟盘Z:

A1:
PECMD2012.1.73.1-130214.多窗口线程孵化版_win32.sfx.zip

DEVI开关  *retid:变量名     返回本次安装驱动的设备的ID ...

----------------------------------------------------------------------
RAMD ImDisk,L64,NTFS,Z:,ImDisk1
是需要安装了Imdisk驱动之后才能有效的,经过实践,发现必须完整安装了ImDisk才行,只有sys驱动还是不行。

DEVI开关  *retid:变量名     返回本次安装驱动的设备的ID ... [/quote]
测试发现,声、网、读卡器、指纹,我笔记本中可以驱动的硬件都能正确返回这个信息,唯独是显卡,下面贴上日志:
网卡:
找到驱动: PCI\VEN_8086&DEV_4222&SUBSYS_135C103C&REV_02, INF 文件: X:\TEMP\PECMDDEVI5441117288~.tmp.dir\5100\NETwLv32.INF
DrvLoad安装驱动[X:\TEMP\PECMDDEVI5441117288~.tmp.dir\5100\NETwLv32.INF]<0>
[DEVI *retid:&&IDS $U:\Driver\Intelnet.CAB] <0>:操作成功完成。
[mess PCI\VEN_8086&DEV_4222&SUBSYS_135C103C&REV_02] <0>:操作成功完成。--正确显示

显卡:
找到驱动: PCI\VEN_8086&DEV_27A2&SUBSYS_30AA103C&REV_03, INF 文件: X:\TEMP\DRVTEMP\Intel 945 WDDM1.1\igdlh.inf
DrvLoad安装驱动[X:\TEMP\DRVTEMP\Intel 945 WDDM1.1\igdlh.inf]<3>
[DEVI *norescan *retid:&&IDS $U:\Driver\VGA.CAB,,X:\TEMP\DRVTEMP] <1>:函数不正确。
[FILE X:\TEMP\DRVTEMP] <0>:操作成功完成。
[TEAM DEVI *norescan *retid:&&IDS $U:\Driver\VGA.CAB,,X:\TEMP\DRVTEMP|FILE X:\TEMP\DRVTEMP] <1>:函数不正确。
[ENVI DRIVEVGA=OFF] <0>:操作成功完成。
[FIND $=,ENVI DRIVEVGA=OFF!ENVI DRIVEVGA=ON] <0>:操作成功完成。
[mess **OFF] <0>:操作成功完成。。--显示为空

***去掉了 *norescan  参数结果一样

[ 本帖最后由 2012yws@ 于 2013-2-15 12:09 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-2-15 14:05:38 | 显示全部楼层
原帖由 2012yws@ 于 2013-2-15 12:06 发表
----------------------------------------------------------------------
RAMD ImDisk,L64,NTFS,Z:,ImDisk1
是需要安装了Imdisk驱动之后才能有效的,经过实践,发现必须完整安装了ImDisk才行,只有sys驱 ...

1。 看看上面2行:

DrvLoad安装驱动[X:\TEMP\DRVTEMP\Intel 945 WDDM1.1\igdlh.inf]<3>
[DEVI *norescan *retid:&&IDS $U:\Driver\VGA.CAB,,X:\TEMP\DRVTEMP] <1>:函数不正确
最后安装 驱动时, 你PE的drvload.exe 返回错误码3,表示出错了,没安装成功。
出错了,就不返回该ID。 只返回成功安装的设备的ID。

2。只需要 imdisk.sys 即可用IMDISK。
我在XPPE 下就这么用的。
包内有  imdisk驱动注册.reg 。 导入你的 SETUPREG.HI_ 即可。




[ 本帖最后由 mdyblog 于 2013-2-15 15:24 编辑 ]
回复

使用道具 举报

发表于 2013-2-15 19:52:31 | 显示全部楼层
原帖由 mdyblog 于 2013-2-15 14:05 发表

1。 看看上面2行:
DrvLoad安装驱动[X:\TEMP\DRVTEMP\Intel 945 WDDM1.1\igdlh.inf]
[DEVI *norescan *retid:&&IDS $U:\Driver\VGA.CAB,,X:\TEMP\DRVTEMP] :函数不正确。最后安装 驱动时, 你PE的drvload.e ...

-----------------------------
谢谢楼主,请问楼主,如何安装包内的imdisk.inf文件?因为我在win7pe下导入注册表出错,所以尝试了安装inf文件,以下是安装包-修改了一下,这个包使用右键方式能够正确安装使用,想用脚本,但不成功,贴上代码:
logs * x:\cc.log
CALL $SETUPAPI.DLL,InstallHinfSection DefaultInstall 128 .\imdisk.inf
DEVI *retid:&&IDS *.INF
mess %&IDS%
DEVI *rescan *norescan *self %Curdir%,DiskDrive
**已经尝试了多种模式都没有成功。

日志:
[LOGS * x:\cc.log] <0>:操作成功完成。
[CALL $SETUPAPI.DLL,InstallHinfSection DefaultInstall 128 .\imdisk.inf] <127>:找不到指定的程序。
DEVI驱动签名【不需要修改】
调试:[Ver=60001 bNt6=3 bINF=0 bInstall=0 notcheck=0 rescan=0][DEVI *retid:&&IDS *.INF] <0>:操作成功完成。
[mess ] <0>:操作成功完成。
。。。。。。
[DEVI *rescan *norescan *self X:\imdisk,DiskDrive] <0>:操作成功完成。
[LOGS ] <0>:操作成功完成。

请问如何使用脚本调用inf文件正确安装呢?

imdisk: imdisk.7z (52.54 KB, 下载次数: 3)

[ 本帖最后由 2012yws@ 于 2013-2-15 19:54 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2013-2-15 22:09:25 | 显示全部楼层
原帖由 2012yws@ 于 2013-2-15 19:52 发表
-----------------------------
谢谢楼主,请问楼主,如何安装包内的imdisk.inf文件?因为我在win7pe下导入注册表出错,所以尝试了安装inf文件,以下是安装包-修改了一下,这个包使用右键方式能够正确安装使 ...

DEVI *retid:&&IDS  $%&CurDir%\imdisk.inf       //[,安装节][,操作码]  

上面的命令我刚测试过,可以成功。
IMDISK  为 虚拟设备,没有DEVID。 %&IDS%  为空;不理它。
虚拟设备 不能自动安装。只能指定INF强制安装。如上面。



2:  导入注册表出错
是在制作 PE 时导入注册表。而不是在启动后。启动后则只能INF安装。


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

使用道具 举报

发表于 2013-2-15 22:32:51 | 显示全部楼层
原帖由 mdyblog 于 2013-2-15 22:09 发表

DEVI *retid:&&IDS  $%&CurDir%\imdisk.inf       //[,安装节][,操作码]  
上面的命令我刚测试过,可以成功。
IMDISK  为 虚拟设备,没有DEVID。 %&IDS%  为空;不理它。
虚拟设备 不能自动安装。只能指定 ...

----------------------------------------------------------------
我这里还是不成功,贴上日志:
使用以下代码:
DEVI *retid:&&IDS  $%&CurDir%\imdisk.inf

日志(其它忽略):
。。。。。。
DrvLoad安装驱动[X:\imdisk\imdisk.inf]<3>
[DEVI *retid:&&IDS  $X:\imdisk\imdisk.inf] <3>:系统找不到指定的路径。
。。。。。。
请教楼主,在win7pe下测试的情况如何?
回复

使用道具 举报

 楼主| 发表于 2013-2-16 01:23:48 | 显示全部楼层
原帖由 2012yws@ 于 2013-2-15 22:32 发表

----------------------------------------------------------------
我这里还是不成功,贴上日志:
使用以下代码:
DEVI *retid:&&IDS  $%&CurDir%\imdisk.inf

日志(其它忽略):
。。。。。。
Drv ...


见附件。
啊, 7PE需要禁止系统的drvload ,用PECMD内部算法,  用*inner   。
DEVI *retid:&&IDS *inner   $%&CurDir%\imdisk.inf       //[,安装节][,操作码]



用 PECMD2012.1.73.1-130214-3.多窗口线程孵化版_win32.sfx.zip
可以不用 *inner

DEVI   $$%&CurDir%\imdisk.inf,,  //最标准
DEVI    $%&CurDir%\imdisk.inf,,  //标准些

DEVI    $%&CurDir%\imdisk.inf    //或
  


[ 本帖最后由 mdyblog 于 2013-2-16 06:11 编辑 ]

PE_IMDISK驱动.zip

67.91 KB, 下载次数: 19

回复

使用道具 举报

发表于 2013-2-16 11:54:14 | 显示全部楼层
原帖由 mdyblog 于 2013-2-16 01:23 发表


见附件。
啊, 7PE需要禁止系统的drvload ,用PECMD内部算法,  用*inner   。
DEVI *retid:&&IDS *inner   $%&CurDir%\imdisk.inf       //[,安装节][,操作码]


用 PECMD2012.1.73.1-130214-3.多窗口线 ...

-------------------------
谢谢楼主,已经完美解决问题了
另外也发现了DEVI在win7pe下安装显卡驱动需要使用 *inner   参数,否则当安装了兼容驱动后,会导致ID信息丢失,而使用参数后,则能正确安装匹配的驱动
回复

使用道具 举报

 楼主| 发表于 2013-2-18 13:52:13 | 显示全部楼层
原帖由 clonecd 于 2013-2-18 09:33 发表
请教老师,PECMD2012可以设置TABL控件的某一行或某一列为粗体吗?


PECMD2012.1.73.1-130214-5.多窗口线程孵化版_win32.sfx.zip

    TEAM ENVI  @TABL1.Color=*1;;;;**B  //第一行 Bold
    TEAM ENVI  @TABL1.Color=1;;;;**U   //第一列 斜体

ENVI @名称.Color=列号;[颜色][;背景色][;字体大小;字体名]
ENVI @名称.Color=*行号;[颜色][;背景色][;字体大小;字体名]

字体名可以附带其他修饰[**BbUuIiUuSs#Weight#Width#CharSet#Quality#Orientation#Escapement#
┃   OutPrecision#ClipPrecision#PitchAndFamily]。适用其它字体设置            

HELP  TABL
HELP  EDIT
Snap1.gif

[ 本帖最后由 mdyblog 于 2013-2-19 02:17 编辑 ]
回复

使用道具 举报

发表于 2013-2-19 18:21:32 | 显示全部楼层

求助:麻烦看看下面哪句有问题

2003PE,用下面的代码进入后PECMD陷入死循环,连LOG也写不了。
LOGS x:\pecmd.log
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
FIND MEM<384,FBWF P40 L96 H192!FBWF P40 L160 H256
TEAM ENVI W=%WinDir%|ENVI $WS=%WinDir%\SYSTEM32|ENVI WSD=%WS%\Drivers|ENVI $T=%ProgramFiles%
DISP W800 H600 B32
LOGO %WS%\logo.jpg
TEAM TEXT 初始化 Windows 2003 PE 文件系统 ...#0xFFFFFF L20 T56 R500 B580 $20*|WAIT 1000
TEAM PATH %SystemDrive%\TEMP|INIT CIU|EXEC @PECMD.EXE CALL $SHELL32.DLL,DllInstall,#1,U
TEAM TEXT 正在加载桌面...|WAIT 1000  
TEAM SHEL %W%\EXPLORER.EXE|LOGO|TEXT
EXEC =wallcmd.exe %WS%\WINPE.JPG
`修改注册表和相关文件名以支持 Vista 安装
REGI HKLM\SYSTEM\CurrentControlSet\Control\MiniNT\!
EXEC !CMD.EXE /C "REN %WinDir%\SYSTEM32\HALACPI.DLL HAL.DLL"
`如果不能给 USB 移动存储设备迅速分配盘符或者关机缓慢,请尝试重启 AudioSrv 服务(对于部分 HD 声卡)
TEAM SERV AudioSrv|SERV AudioSrv
`杀掉无用进程并删掉 X: 盘可删除文件以节省空间
TEAM WAIT 3000|KILL SMSS.EXE|KILL WINLOGON.EXE|FILE %WS%\SMSS.EXE|FILE %WS%\WINLOGON.EXE
TEAM ENVI W=|ENVI WS=|ENVI WSD=|ENVI T=|ENVI PECMD=|ENVI EDIT=
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
LOGS
回复

使用道具 举报

发表于 2013-2-19 18:58:27 | 显示全部楼层
回复 #4735 fukystone 的帖子

LOGS *x:\pecmd.log

*为实时调试模式,立即刷到磁盘。
回复

使用道具 举报

发表于 2013-2-19 19:32:01 | 显示全部楼层

回复 #4736 andos 的帖子

还是不行。
pecmd.log文件是建立了,不过是0字节
看进程,有2个pecmd,一个用内存300多k,一个用了1500多k。
应该是进入死循环,出不来了。
回复

使用道具 举报

发表于 2013-2-19 21:14:59 | 显示全部楼层
是不是EXEC @PECMD.EXE CALL $SHELL32.DLL,DllInstall,#1,U出错,导致在后台有提示框出现
回复

使用道具 举报

 楼主| 发表于 2013-2-19 22:41:03 | 显示全部楼层

回复 #4735 fukystone 的帖子

版本问题吧。
PECMD2012.1.73.1-130214-3.多窗口线程孵化版_win32.sfx.zip

//预览版,有些重写了,  PECMD2012.1.73.1-130214-6.多窗口线程孵化版_win32.sfx.zip
回复

使用道具 举报

 楼主| 发表于 2013-2-19 22:54:36 | 显示全部楼层

EDIT MEMO 支持垂直居中!!!

原帖由 clonecd 于 2013-2-19 19:14 发表


多谢改善,增强新功能啊。

EDIT MEMO 支持垂直居中!!!  方便界面设计。

开关:   -vcenter  

    LABE -vcenter -right &,L81T9W32H30,前导,,
    EDIT -vcenter &PRE,L115T8W63H30,,,
    LABE -vcenter -right &,L200T9W31H30,参数,,
    EDIT -vcenter &PARAM,L232T9W360H30,,,
Snap1.gif
回复

使用道具 举报

发表于 2013-2-20 00:55:06 | 显示全部楼层
原帖由 mdyblog 于 2013-2-19 22:41 发表
版本问题吧。
PECMD2012.1.73.1-130214-3.多窗口线程孵化版_win32.sfx.zip

//预览版,有些重写了,  PECMD2012.1.73.1-130214-6.多窗口线程孵化版_win32.sfx.zip


用的PECMD2012.1.73.1-130214-3.多窗口线程孵化版_win32.sfx.zip,应该是最新的吧?
莫名其妙的问题很多:
比如
WALL %WS%\pe.jpg 不行
但是
EXEC PECMD.EXE WALL  %WS%\pe.jpg  就可以
还有CALL命令也是。
CALL $SHELL32.DLL,DllInstall,#1,U 报错
非得 EXEC @PECMD.EXE CALL $SHELL32.DLL,DllInstall,#1,U 才行。

目前感觉功能是强了很多,但是bug也不少。关键这东西也没个调试器,日志里的错误信息也派不上用场。
楼主大概是想把这东西往小型编程工具上发展,可是非可视化的东西编码很累的,我写个窗口光调控件位置就要搞半天,个人感觉不适合编写大量代码。
回复

使用道具 举报

 楼主| 发表于 2013-2-20 14:31:17 | 显示全部楼层

回复 #4742 fukystone 的帖子

包内的  PECMDEDIT                是可视化的。

2:CALL $SHELL32.DLL,DllInstall,#1,U 报错
非得 EXEC @PECMD.EXE CALL $SHELL32.DLL,DllInstall,#1,U 才行。

A: 你再调调。 这可是所有人都用过的语句。应该没这个问题。

是不是 pe开的磁盘缓存不够。

EXEC @PECMD.EXE CALL $SHELL32.DLL,DllInstall,#1,U
另开 pecmd ,错误码 不显示的,估计还是错了。
EXEC 不带=的话,错误码都不显示的,就继续下面的命令。

[ 本帖最后由 mdyblog 于 2013-2-20 14:37 编辑 ]
回复

使用道具 举报

发表于 2013-2-20 16:45:14 | 显示全部楼层
pecmdedit的前面如果出现窗口会产生阴影,请修改下
回复

使用道具 举报

 楼主| 发表于 2013-2-20 19:23:03 | 显示全部楼层

回复 #4744 2011hwo1 的帖子

没明白,给个贴图吧。
回复

使用道具 举报

发表于 2013-2-21 10:40:48 | 显示全部楼层
就是档在pecmdedit前面的窗口出现最小化和移动会在pecmdedit里面留下阴影
未命名.jpg
回复

使用道具 举报

 楼主| 发表于 2013-2-21 13:49:32 | 显示全部楼层

回复 #4746 2011hwo1 的帖子

什么系统,这么怪!
我在 XP32, WIN7-64 下都美这个现象。
你在其他人的系统上试试。像是系统除问题了,或卡住了, 不刷新。

[ 本帖最后由 mdyblog 于 2013-2-21 15:01 编辑 ]
回复

使用道具 举报

发表于 2013-2-21 17:09:31 | 显示全部楼层
xp32啊,只要拖动窗口就出现阴影,有时候严重,有时候有很小的阴影,如果最小化pecmdedit后再还原就又没要阴影了
回复

使用道具 举报

发表于 2013-2-21 17:10:33 | 显示全部楼层
电源设置为最小电源模式
回复

使用道具 举报

 楼主| 发表于 2013-2-21 17:23:38 | 显示全部楼层

新版 TABL支持字体表头定制

PECMD2012.1.73.1-130214-7.多窗口线程孵化版_win32.sfx.zip  新版TABL支持行列字体表头定制 EDIT/MEMO 垂直居中
TABL  [-font:字体大小[:字体名][:头部高:头部颜色:渐变度:头部字体高:头部字体宽:字体高:字体宽:行高]]
          [-color:[背景色][#文字背景色][#默认文字颜色][#选择单元格颜色]] [-sps]                                 【*】[名称],<形状>[,格式数据][,数据][,状态]         

    TABL -font:12:幼圆:1.5:0x800000:-0.8 -color:0x00F000#0x808000#0xF0E0FF#0x80  TABL3,L420T19W330H119,%&TITLE%,%&TDAT%, 0x180940  //自由着色
Snap1.gif
回复

使用道具 举报

 楼主| 发表于 2013-2-21 18:33:16 | 显示全部楼层
原帖由 clonecd 于 2013-2-21 18:04 发表


此版无法响应表格中的鼠标单击事件。
双击也不行,难道这些都改了?


这个是全新设计的TABL。 以前是MS的控件,部分改改。总是不能很好控制它,尤其是那个讨厌的选中兰条。
搞得 老是闪一下。

这次,自己完全控制怎么绘出来。

兼容原来的。

表格.WCS   表格选择单元格并记录.WCS  里面有单击 实例。

你什么样的代码,贴出来我调调。

[ 本帖最后由 mdyblog 于 2013-2-21 19:36 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-10 05:19

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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