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

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

   火... [复制链接]
 楼主| 发表于 2015-6-26 04:31:48 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-26 04:32 编辑

软键盘v3.zip (1.1 KB, 下载次数: 5)
00056.png

(模拟标题栏版)
抛砖引玉。
谁能 出个美化完整版。

点评

在PE模式下,一些组合按键没有效果,这样做出来的软键盘也不好使吧 如果能借助WinIo实现驱动级的键盘模拟,效果会好很多。  详情 回复 发表于 2015-6-26 13:41
请教大师如何使用PECMD指令打开文件夹?  详情 回复 发表于 2015-6-26 12:32
回复

使用道具 举报

发表于 2015-6-26 12:32:11 | 显示全部楼层
mdyblog 发表于 2015-6-26 04:31
(模拟标题栏版)
抛砖引玉。
谁能 出个美化完整版。

请教大师如何使用PECMD指令打开文件夹?

点评

[attachimg]219664[/attachimg]  详情 回复 发表于 2015-6-26 13:35
回复

使用道具 举报

 楼主| 发表于 2015-6-26 13:35:56 | 显示全部楼层
MarilynManSon 发表于 2015-6-26 12:32
请教大师如何使用PECMD指令打开文件夹?

00059.png

点评

谢谢大师指点。。。  详情 回复 发表于 2015-6-26 15:07
回复

使用道具 举报

发表于 2015-6-26 13:41:53 | 显示全部楼层
mdyblog 发表于 2015-6-26 04:31
(模拟标题栏版)
抛砖引玉。
谁能 出个美化完整版。

在PE模式下,一些组合按键没有效果,这样做出来的软键盘也不好使吧
如果能借助WinIo实现驱动级的键盘模拟,效果会好很多。

点评

什么键没效果?  详情 回复 发表于 2015-6-26 14:14
回复

使用道具 举报

 楼主| 发表于 2015-6-26 14:14:02 | 显示全部楼层
阿弥陀佛 发表于 2015-6-26 13:41
在PE模式下,一些组合按键没有效果,这样做出来的软键盘也不好使吧
如果能借助WinIo实现驱动级的键盘模 ...

什么键没效果?

点评

比如Win+T的组合  详情 回复 发表于 2015-6-26 20:14
回复

使用道具 举报

发表于 2015-6-26 15:07:42 | 显示全部楼层
回复

使用道具 举报

发表于 2015-6-26 19:09:50 | 显示全部楼层
本帖最后由 ge 于 2015-6-26 19:36 编辑
mdyblog 发表于 2015-6-26 04:29
你把计算公式发上来, 就有人能写出来了。
计算公式 写成一个 _SUB 函数就可以了。

sshot-2.png
须要两个数值!弦长c和高h,
calc r=((%c%/2)^2+%h%^2)/(2*%h%)
calc z=(%c%/2)/%r%
calc a=2*deg(arcsin(%z%))
calc l=2*%r%*pi*%a%/360
r就是半径了,a就是圆心角了,l就是弧长了。

点评

//MyFUN %c% %h% &&r &&z &&z &&l _SUB MyFUN SET &c=%~1 SET &h=%~2 calc &&r=((%&c%/2)^2+%&h%^2)/(2*%&h%) calc &&z=(%&c%/2)/%&r% calc &&a=2*deg(arcsin(%&z%)) calc &&l=2*%&r%*pi*%&a%/360 ENV  详情 回复 发表于 2015-6-26 19:35
回复

使用道具 举报

 楼主| 发表于 2015-6-26 19:35:53 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-26 19:37 编辑
ge 发表于 2015-6-26 19:09
须要两个数值!弦长c和高h,
calc r=((%c%/2)^2+%h%^2)/(2*%h%)
calc z=(%c%/2)/%r%


//MyFUN %c%   %h% &&r &&z &&a &&l
_SUB MyFUN
SET &c=%~1
SET &h=%~2
calc &&r=((%&c%/2)^2+%&h%^2)/(2*%&h%)
calc &&z=(%&c%/2)/%&r%
calc &&a=2*deg(arcsin(%&z%))
calc &&l=2*%&r%*pi*%&a%/360
ENVI-ret  %~3=%&r%
ENVI-ret  %~4=%&z%
ENVI-ret  %~5=%&a%
ENVI-ret  %~6=%&l%
_END

调用:
MyFUN %c%   %h% &&r &&z &&a &&l

%&r%  %&z%  %&a%  %&l%  里面的值就是需要的结果。
至于界面 怎么摆,自己看桌办。
回复

使用道具 举报

发表于 2015-6-26 19:43:30 | 显示全部楼层
本帖最后由 ge 于 2015-6-26 19:58 编辑
mdyblog 发表于 2015-6-26 19:35
//MyFUN %c%   %h% &&r &&z &&a &&l
_SUB MyFUN
SET &c=%~1


怎么用?看不明白!是要编辑框edit里输入弦长c和高h吗?
回复

使用道具 举报

发表于 2015-6-26 19:57:10 | 显示全部楼层
本帖最后由 ling3882688 于 2015-6-26 21:35 编辑

M大,PART命令/PBR命令怎么用?我用微软的bootsect出现错误,能用part /pbr来解决吗?

bootsect.exe /nt60 E: 可以写成 part -super -up /pbr 0#3(重写PBR默认为nt6)
bootsect.exe /nt52 E:应该怎么写?
还有个问题,我如何判断part命令执行成功了呢?我发现每次返回值都不一样。

1.jpg


点评

PART /pbr=nt6 1#3 分区号 多试几个 PART /pbr=nt6 1#1 PART /pbr=nt6 1#2 PART /pbr=nt6 1#3 PART /pbr=nt6 1#4 PART /pbr=nt6 1#5 那个没用的U盘测试。  详情 回复 发表于 2015-6-26 21:39
回复

使用道具 举报

发表于 2015-6-26 20:14:48 | 显示全部楼层
mdyblog 发表于 2015-6-26 14:14
什么键没效果?

比如Win+T的组合

点评

应该是什么效果?  详情 回复 发表于 2015-6-26 21:35
回复

使用道具 举报

 楼主| 发表于 2015-6-26 21:35:05 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-26 21:47 编辑


   应该是什么效果?


试试

SEND  #0x5B_,T,#0x5B^
WAIT 5000

SEND  #0x5C_,T,#0x5C^
WAIT 1000


/////////
就0x01 到  0xFF 试贝。
回复

使用道具 举报

 楼主| 发表于 2015-6-26 21:39:38 | 显示全部楼层
ling3882688 发表于 2015-6-26 19:57
M大,PART命令/PBR命令怎么用?我用微软的bootsect出现错误,能用part /pbr来解决吗?

bootsect.exe /nt ...

PART   /pbr=nt6  1#3
分区号 多试几个
PART   /pbr=nt6  1#1
PART   /pbr=nt6  1#2
PART   /pbr=nt6  1#3
PART   /pbr=nt6  1#4
PART   /pbr=nt6  1#5

那个没用的U盘测试。


点评

bootsect.exe /nt52 E:应该怎么写? 还有个问题,我如何判断part命令执行成功了呢?我发现每次返回值都不一样。  详情 回复 发表于 2015-6-26 21:46
回复

使用道具 举报

发表于 2015-6-26 21:46:09 | 显示全部楼层
mdyblog 发表于 2015-6-26 21:39
PART   /pbr=nt6  1#3
分区号 多试几个
PART   /pbr=nt6  1#1

bootsect.exe /nt52 E:应该怎么写?
还有个问题,我如何判断part命令执行成功了呢?我发现每次返回值都不一样。

点评

PART -phy# LIST DRV E:,&&V //1 7 1 4342949376 24914371584 8482323 29257320960 1 E: 0 MSTR &&id,&&hd=%&V% FIND $%hd%, TEAM PART -phy /pbr=nt6 %&hd%#%id%| MESS 返回码  详情 回复 发表于 2015-6-26 21:53
回复

使用道具 举报

 楼主| 发表于 2015-6-26 21:53:46 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-26 21:55 编辑
ling3882688 发表于 2015-6-26 21:46
bootsect.exe /nt52 E:应该怎么写?
还有个问题,我如何判断part命令执行成功了呢?我发现每次返回值都 ...


PART -phy# LIST DRV E:,&&V
//1     7   1     4342949376    24914371584     8482323    29257320960    1  E:  0

MSTR &&id,&&hd=<8><10>%&V%
FIND $%hd%<>,  TEAM PART  -phy   /pbr=nt6  %&hd%#%id%| MESS 返回码:%&ERROR%


%&ERROR% 为0则成功。 (失败(好像只有)返回1)

点评

PART -phy# LIST DRV C:,&&V //1 12 1 1048576 53688139776 2048 53689188352 1 C: 0 MSTR &&id,&&hd=%&V% FIND $%hd%, TEAM PART -phy /pbr=nt6 %&hd%#%id%| MESS 返回码  详情 回复 发表于 2015-6-27 06:32
回复

使用道具 举报

发表于 2015-6-27 06:32:37 | 显示全部楼层
本帖最后由 ling3882688 于 2015-6-27 06:33 编辑
mdyblog 发表于 2015-6-26 21:53
PART -phy# LIST DRV E:,&&V
//1     7   1     4342949376    24914371584     8482323    292573209 ...

PART -phy# LIST DRV C:,&&V
//1    12   1        1048576    53688139776        2048    53689188352    1  C:  0

MSTR &&id,&&hd=<8><10>%&V%
FIND $%hd%<>,  TEAM PART  -phy   /pbr=nt6  %&hd%#%id%| MESS 返回码:%&ERROR%

上面的返回值是0,但是实际上是不成功的,因为系统分区是锁定的。如果我手动把C盘pbr改成nt6然后用PART  -phy   /pbr=nt5  %&hd%#%id%却可以成功。不知是怎么回事?C盘是xp系统,难道是会智能判断吗?

点评

当前系统是什么系统? XP? WIN7  详情 回复 发表于 2015-6-27 10:20
回复

使用道具 举报

 楼主| 发表于 2015-6-27 10:20:32 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-27 10:34 编辑
ling3882688 发表于 2015-6-27 06:32
PART -phy# LIST DRV C:,&&V
//1    12   1        1048576    53688139776        2048    53689188352 ...


当前系统是什么系统? XP? WIN7

自带的ntf6 nt5 是FAT的。
NTFS 等,需要自备引导文件。
这个主要用来恢复PBR
PART  -phy   /pbr=.\mynt6.pbr   %&hd%#%id%

.\mynt6.pbr 是先前备份的文件。

点评

当前系统是xp。  详情 回复 发表于 2015-6-27 10:47
回复

使用道具 举报

发表于 2015-6-27 10:47:52 | 显示全部楼层
本帖最后由 ling3882688 于 2015-6-27 11:16 编辑
mdyblog 发表于 2015-6-27 10:20
当前系统是什么系统? XP? WIN7

自带的ntf6 nt5 是FAT的。

当前系统是xp。
1.jpg
如何建立一个图上那样的FAT32磁盘分区呢?这个机器目前不在手边,无法测试。只能是虚拟机测试。
从微软的支持文档里找到这个。貌似上面的提示不是因为分区的问题,而是因为磁盘驱动器类型导致的,这样的磁盘如何才能在虚拟机里模拟呢?
1.png

点评

那是新磁盘。 1扇区是 4096(4K)字节。 我们目前一般的磁盘,1扇区是 512 字节。  详情 回复 发表于 2015-6-27 11:57
回复

使用道具 举报

 楼主| 发表于 2015-6-27 11:57:39 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-27 12:01 编辑
ling3882688 发表于 2015-6-27 10:47
当前系统是xp。

如何建立一个图上那样的FAT32磁盘分区呢?这个机器目前不在手边,无法测试。只能是虚 ...


那是新磁盘。
1扇区是 4096(4K)字节。

我们目前一般的磁盘,1扇区是 512 字节。

U盘一般都是 4K的。 但是支持512访问接口。自己再去拼装。
“新磁盘” 不支持 512访问接口, 直接4096访问接口。

相应的, 多扇区引导码也不同。(FAT16单扇区引导码估计没问题)。

点评

论坛太卡了,好久才正常打开。 新磁盘用微软的bootsect无法更改pbr,BOOTICE或者PECMD都可以,但是用微软的ISO安装的话却可以正常改写PBR,那肯定应该也不是用的BOOTSECT。 如果是EFI引导GPT磁盘,PBR改成NT60或者  详情 回复 发表于 2015-6-27 15:25
回复

使用道具 举报

发表于 2015-6-27 15:25:17 | 显示全部楼层
mdyblog 发表于 2015-6-27 11:57
那是新磁盘。
1扇区是 4096(4K)字节。

论坛太卡了,好久才正常打开。
新磁盘用微软的bootsect无法更改pbr,BOOTICE或者PECMD都可以,但是用微软的ISO安装的话却可以正常改写PBR,那肯定应该也不是用的BOOTSECT。
如果是EFI引导GPT磁盘,引导分区的PBR改成NT60或者不改都不影响启动。真的搞不明白。

点评

版本不对。 那个需要支持4K扇区的软件。里面内置的PBR支持4K扇区。 你用的版本低了。  详情 回复 发表于 2015-6-27 16:07
回复

使用道具 举报

 楼主| 发表于 2015-6-27 16:07:49 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-27 16:12 编辑
ling3882688 发表于 2015-6-27 15:25
论坛太卡了,好久才正常打开。
新磁盘用微软的bootsect无法更改pbr,BOOTICE或者PECMD都可以,但是用微 ...


版本不对。
那个需要支持4K扇区的软件。里面内置的PBR支持4K扇区。
你用的版本低了。

PECMD
1)写入的是FAT的单扇区的PBR。无所谓4K了。
2)PECMD也不检查写入的PBR的内容对不队,只管如实写下去而已。只是提供一个写入手段。

BOOTICE估计也是如此。

以后高版本估计会考虑4K扇区,写入的PBR就不同了。

点评

M大,你说的是我用的bootsect版本低吗?我找的最新的win10 32位的貌似也不支持。  详情 回复 发表于 2015-6-27 18:50
回复

使用道具 举报

发表于 2015-6-27 18:50:08 来自手机 | 显示全部楼层
mdyblog 发表于 2015-6-27 16:07
版本不对。
那个需要支持4K扇区的软件。里面内置的PBR支持4K扇区。
你用的版本低了。

M大,你说的是我用的bootsect版本低吗?我找的最新的win10 32位的貌似也不支持。

点评

可能 支持4K的 bootsect 还没出生。 “微软的ISO安装” 是直接磁盘访问,定制的程序。  详情 回复 发表于 2015-6-27 19:14
回复

使用道具 举报

 楼主| 发表于 2015-6-27 19:14:57 | 显示全部楼层
ling3882688 发表于 2015-6-27 18:50
M大,你说的是我用的bootsect版本低吗?我找的最新的win10 32位的貌似也不支持。

可能 支持4K的 bootsect 还没出生。
“微软的ISO安装”  是直接磁盘访问,定制的程序。
回复

使用道具 举报

发表于 2015-6-27 19:46:27 | 显示全部楼层
mdyblog 发表于 2015-6-26 19:35
//MyFUN %c%   %h% &&r &&z &&a &&l
_SUB MyFUN
SET &c=%~1

不懂呀!能说的更明白点吗!
回复

使用道具 举报

 楼主| 发表于 2015-6-28 08:07:47 | 显示全部楼层
本帖最后由 mdyblog 于 2015-6-28 15:00 编辑


精准启动:直接找到启动磁盘。 哪怕两个磁盘(U盘和本地磁盘)或两个分区上的PE一样,也会找到自启动PE对应的磁盘和分区
PECMD2012.1.88.05.67


1)精准制导启动(PECDM.INI)
MOUN -udm -findboot [-ret: 返名] -muh -u+ -udfs -mall -mhide  -udimg: *.img -udimg: *.iso   \\.\PhysicalDrive* C-
注意 -findboot 优先, 有效的话, -mall -mhide -udimg: -muh -u+ 等 自动忽略

返名 中有加载的盘符列表


2)设置精准启动(格式化最后一步)
moun -udm setboot [-ret: 返名] [-udmid: udm号 ] BCD/BOOT.INI启动菜单 [<UDM盘符] [类型]
moun -udm setboot [-ret: 返名] [-udmid: udm号 ] BCD/BOOT.INI启动菜单 [磁盘号>[#udm号]] [类型]
moun -udm setboot [-ret: 返名] BCD/BOOT.INI启动菜单 [磁盘号>#文件名] ud
moun -udm setboot [-ret: 返名] BCD/BOOT.INI启动菜单 [磁盘号>#] u+
//类型: "" udm  pt ud u+ cd

对于普通分区和UDM软加载的分区(G:)上的BCD/BOOT.INI启动菜单可以
moun -udm setboot  G:\BOOT\BCD

对于UD磁盘1的EFI.IMG
moun -udm setboot G:\BOOT\BCD 1#EFI.IMG  ud

对于U+磁盘1
moun -udm setboot G:\BOOT\BCD 1  u+

对于光盘,标志文件WINPE\WINPE.INI或卷标H3CDALL
moun -udm setboot G:\BOOT\BCD devfile#WINPE\WINPE.INI  cd    或:
moun -udm setboot G:\BOOT\BCD #WINPE\WINPE.INI  cd.file  //不混淆的话#可省
moun -udm setboot G:\BOOT\BCD devvol#H3CDALL   cd    或:
moun -udm setboot G:\BOOT\BCD #H3CDALL   cd.vol  //不混淆的话#可省


3)也可自己读出 启动磁盘信息
MOUN -udm findboot -ret: 返名   //查找启动设备,返回:磁盘号 UDM号 类型 可用于引导的参数
MSTR 磁盘号,UDM号,类型=<1*>%返名%
对UD, UDM号返回文件名
类型为空,则为udm

磁盘号=-1 无效(比如没有设置。比如直接将人家的PE分区拷过来,没有重新设置)
磁盘号>=0 为磁盘
如果是光盘, 磁盘号返回 符合的光盘盘符列表 D:F:
回复

使用道具 举报

发表于 2015-6-28 17:23:56 | 显示全部楼层
请问一下高DPI的问题要如何解决??

比如把字体设为125%或150%那默认情况下的控件位置都需要做改动,有没有什么办法自适应?

点评

四不是自己动态计算空间大小。  详情 回复 发表于 2015-6-28 18:06
回复

使用道具 举报

 楼主| 发表于 2015-6-28 18:06:42 | 显示全部楼层
chenall 发表于 2015-6-28 17:23
请问一下高DPI的问题要如何解决??

比如把字体设为125%或150%那默认情况下的控件位置都需要做改动,有没有 ...


是不是自己动态计算空间大小。

点评

本来是要考虑动态调整空间大小的,发现太麻烦了。 昨天527104427给了我资料,直接动态调整字体大小这样很简单多了。  详情 回复 发表于 2015-6-29 15:14
回复

使用道具 举报

发表于 2015-6-28 19:28:18 | 显示全部楼层
527104427 发表于 2015-6-25 20:10
这些没有直接的函数支持,是很难一步到位的,只能一步一步来。

你还是跟M大商量一下吧,让他把这些弄 ...

他和我说
//MyFUN %c%   %h% &&r &&z &&a &&l
_SUB MyFUN
SET &c=%~1
SET &h=%~2
calc &&r=((%&c%/2)^2+%&h%^2)/(2*%&h%)
calc &&z=(%&c%/2)/%&r%
calc &&a=2*deg(arcsin(%&z%))
calc &&l=2*%&r%*pi*%&a%/360
ENVI-ret  %~3=%&r%
ENVI-ret  %~4=%&z%
ENVI-ret  %~5=%&a%
ENVI-ret  %~6=%&l%
_END

调用:
MyFUN %c%   %h% &&r &&z &&a &&l

%&r%  %&z%  %&a%  %&l%  里面的值就是需要的结果。
至于界面 怎么摆,自己看桌办。
我不懂!我问他他也不回复!后来想起来也可以写成
TEAM ENVI^ ENVIMODE=1| ENVI^ FORCELOCAL=1
MYWINDOW1
_SUB MYWINDOW1,W960H440,
EDIT Edit1,L32T24W840H36,,,,,24
ITEM ITEM1,L32T68W30H34,=,CALL MyFUN
_END

_SUB MyFUN
LPOS W= ,1,%Edit1%
CALC K=%W%-1
LSTR &c=%K%,%Edit1%
CALC T=%W%+1
MSTR &h=%T%,10,%Edit1%
CALC &&r=((%&c%/2)^2+%&h%^2)/(2*%&h%)
CALC &&z=(%&c%/2)/%&r%
CALC &&a=2*deg(arcsin(%&z%))
CALC &&l=2*%&r%*pi*%&a%/360
ENVI @Edit1=r=%&r% a=%&a% l=%&l%
_END
来完成!这样在编辑框里输入弦长c和高h的值,中间有一个空格就好了!有点麻烦!也有点长!一个数值须要单独一个过程!如果要是加入此函数到CALC命令就简单多了!
你看看还有没有什么好方法!


回复

使用道具 举报

发表于 2015-6-28 20:10:18 | 显示全部楼层
527104427 发表于 2015-6-28 20:02
哦,等我抽空试试。最近忙的很

谢谢!
回复

使用道具 举报

发表于 2015-6-29 08:33:58 | 显示全部楼层
请教下各位:下面是查询WIM映像信息卷号的部份代码,映像卷在9个以内都能显示出来,如果映像卷大于9个则无法显示,如何修改下面代码让返回值%&ipos%大于9都列出来。

TEAM EXEC* @MEMO=!cmd.exe /c Dism /get-wiminfo /wimFile:"%index%"
RPOS &&iPos=:,4,%MEMO%
calc #pos = %ipos% + 2
LSTR &&ipos= %pos%,%MEMO%
RSTR &&ipos=1,%&ipos%

点评

RSTR &&ipos=1,%&ipos% 改成 RSTR &&ipos=10,%&ipos% SED &ipos=0,[^0-9].*,,%&ipos%  详情 回复 发表于 2015-6-29 14:35
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-9-12 18:06

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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