无忧启动论坛

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

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

    [复制链接]
331#
发表于 2012-2-17 07:50:13 | 只看该作者
逻辑分区,可以不用.因为可以在正常系统,使用自带分区工具操作.

常见扩展分区类型,给几个

31,基本正常了.

0x0B  就是  11 . 对应如下。
A        B     C     D    E     F  
10     11   12     13  14  15

那么0X17 对应是什么?

图片上,pecmd load getmbr.wcs  给的,具体数,都代表什么?

两个图片的 标识 如何对应?

未命名1.JPG (59.53 KB, 下载次数: 178)

未命名1.JPG

未命名3.JPG (66.59 KB, 下载次数: 181)

未命名3.JPG

未命名4.JPG (63.13 KB, 下载次数: 178)

未命名4.JPG
回复

使用道具 举报

332#
发表于 2012-2-17 08:00:30 | 只看该作者
哦,明白了!

一个是16机制,一个是10机制

习惯的以为都是是16

那就没有什么问题了,就差
PBR  了

待更详细测试,看看是否有其它问题.
另外,PART 里面新加的哥IMG参数, 不知道改如何使用(或者IMG做什么用)
回复

使用道具 举报

333#
发表于 2012-2-17 08:45:54 | 只看该作者
PECMD PART /MBR=NT6  无效

PECMD PART /MBR  有效
PECMD PART /MBR=NT5  有效
PECMD PART /MBR=DOS   有效


用那个BOOTICE,重新写入NT6的MBR,有效

因此,可能写入的NT6代码有问题.

正常情况,着3种MBR,都能启动XP或者NT5的PE

[ 本帖最后由 dvd008 于 2012-2-17 09:12 编辑 ]
回复

使用道具 举报

334#
发表于 2012-2-17 09:14:45 | 只看该作者
CALL @子程式
_SUB 子程式,W350H100,新視窗PECMD2012.1.28,,
        CHEK 選取框 1,L8T15W200H20,測試pecmd選取框1,,0
        CHEK 選取框 2,L8T45W200H20,選取框2,,0
        ENVI @選取框 1.Check=1
        ENVI @選取框 2.Check=1   
        IFEX $%選取框 2.Check%=1,MESS 選取框 2=%選取框 2.Check% @ #OK   
_END

PECMD 4.0可以用
IFEX $%選取框 2.Check%=1
來判斷選取框的狀態,U31無法用IFEX判斷
回复

使用道具 举报

335#
发表于 2012-2-17 09:23:19 | 只看该作者
可否为其它硬盘,U盘写入MBR ?

即可以指定盘符的参数?
默认应该是启动盘吧?
回复

使用道具 举报

336#
发表于 2012-2-17 09:49:28 | 只看该作者
MBR的问题是这样的结果:

/MBR
/MBR=NT5
/MBR=DOS

实际都是NT6的

/MBR=NT6  是无效的

默认NT6 很好.兼容最好

其它没有也可以. 如果不修改,说明里面去掉=NT6即可.

可否为其它硬盘,U盘写入MBR ?   这个有用.希望能支持
回复

使用道具 举报

337#
 楼主| 发表于 2012-2-17 11:38:42 | 只看该作者

[更新166#339]PECMD-32.2012.1除夕版.多窗口多线-U32+裸机系统+18M酷MiniPE

[更新166#339]PECMD-32.2012.1除夕版.多窗口多线-U32+裸机系统+18M酷MiniPE


PECMD-32.2012.1除夕版.多窗口多线-U32(已升级) +裸机系统 抢鲜版 + 18M-COOL  MiniPE(已升级)
***已通过启动PE测试***
下载: http://mdyblog.blog.163.com/blog/static/106150119201202591855298/

166#339楼 U32 FIX , 无参数 SHOW
回复

使用道具 举报

338#
 楼主| 发表于 2012-2-17 11:43:54 | 只看该作者
原帖由 dvd008 于 2012-2-17 09:49 发表
MBR的问题是这样的结果:

/MBR
/MBR=NT5
/MBR=DOS

实际都是NT6的

/MBR=NT6  是无效的

默认NT6 很好.兼容最好

其它没有也可以. 如果不修改,说明里面去掉=NT6即可.

可否为其它硬盘,U盘写入MBR ...


Q1: 可否为其它硬盘,U盘写入MBR
可以,没看文档帮助吧。 还可IMG文件

│PART /mbr[=nt6|=win|=nt5|=dos|=文件名]   [-img=文件名|磁盘]     
├───────────────────────
│/mbr 重写MBR.默认为nt6(win),可以指定文件名,不要太巨大。
默认第一磁盘。

写第二磁盘
PART /mbr[=nt6|=win|=nt5|=dos|=文件名]    1

如NT6
PART /mbr      1

Q2:/MBR
/MBR=NT5
/MBR=DOS
/mbr[=nt6|=win|=nt5|=dos|=文件名]
可以制定文件名。

U32 已修正。
回复

使用道具 举报

339#
 楼主| 发表于 2012-2-17 11:46:48 | 只看该作者
原帖由 dvd008 于 2012-2-17 07:50 发表
逻辑分区,可以不用.因为可以在正常系统,使用自带分区工具操作.

常见扩展分区类型,给几个

31,基本正常了.

0x0B  就是  11 . 对应如下。
A        B     C     D    E     F  
10     11   12     13 ...


Q: 常见扩展分区类型,给几个
A: 目前就3个。
5  扩展分区
0xf  Win95扩展分区LBA
0x85  Linux扩展分区  。windows不认的。

一般用0xf
也可用 5
0x85 不要用,LINUX才认。
回复

使用道具 举报

340#
 楼主| 发表于 2012-2-17 13:20:34 | 只看该作者

[更新167#343]PECMD-32.2012.1除夕版.多窗口多线-U33+裸机系统+18M酷MiniPE

[更新167#343]PECMD-32.2012.1除夕版.多窗口多线-U33+裸机系统+18M酷MiniPE


PECMD-32.2012.1除夕版.多窗口多线-U33(已升级) +裸机系统 抢鲜版 + 18M-COOL  MiniPE(已升级)
***已通过启动PE测试***
下载: http://mdyblog.blog.163.com/blog/static/106150119201202591855298/

167#343楼 U33 FIX 空格变量名
回复

使用道具 举报

341#
 楼主| 发表于 2012-2-17 13:24:20 | 只看该作者
原帖由 bahmo 于 2012-2-17 09:14 发表
CALL @子程式
_SUB 子程式,W350H100,新視窗PECMD2012.1.28,,
        CHEK 選取框 1,L8T15W200H20,測試pecmd選取框1,,0
        CHEK 選取框 2,L8T45W200H20,選取框2,,0
        ENVI @選取框 1.Check=1
  ...


又是空格变量名的原因。
U33 可以。
回复

使用道具 举报

342#
 楼主| 发表于 2012-2-17 13:47:44 | 只看该作者
原帖由 dvd008 于 2012-2-17 08:00 发表
哦,明白了!

一个是16机制,一个是10机制

习惯的以为都是是16

那就没有什么问题了,就差
PBR  了

待更详细测试,看看是否有其它问题.
另外,PART 里面新加的哥IMG参数, 不知道改如何使用(或者IMG做什么用)


A:  -IMG=文件名

文件名 是硬盘镜像文件。 相当于硬盘
PART -super  -align  -CHS=255:63:512    -super myhd.img:1  a  6  63S   1G
分了1G 给第一分区。柱面对齐

PART -super  -align  -CHS=255:63:512    -super myhd.img:1  a  6   1G   1G
分了1G 给第二分区。柱面对齐.

查看
LOAD getmbr.wcs  myhd.img

注意 myhd.img是整个磁盘的镜像,而不是某个分区的镜像。前面带有分区表 。

[ 本帖最后由 2012abc19701 于 2012-2-17 14:12 编辑 ]
回复

使用道具 举报

343#
发表于 2012-2-17 14:49:27 | 只看该作者
原帖由 2012abc19701 于 2012-2-17 13:24 发表


又是空格变量名的原因。
U33 可以。
137233

U32試過把空格拿掉也不行,
U33 OK了,感謝了

但是
CALL @子程式
_SUB 子程式,W350H100,新視窗PECMD2012.1.28,,
        CHEK 選取框1,L8T15W200H20,測試pecmd選取框1,,0
        CHEK 選取框2,L8T45W200H20,選取框2,,0
        ENVI TEST=選取框2   
        ENVI @%TEST%.Check=1
        IFEX $%選取框2.Check%=1,MESS 法一 @ #OK   
        IFEX $%%TEST%.Check%=1,MESS 法二 @ #OK
        MESS %%TEST%.Check% @ #OK
_END

U33還無法使用
IFEX $%%TEST%.Check%=1,MESS 法二 @ #OK
執行畫面顯示
法一
選取框2.Check%

PECMD 4.0是OK的
執行畫面顯示
法一
法二
1

若能解決就可以考慮把4.0換掉了...

[ 本帖最后由 bahmo 于 2012-2-17 15:20 编辑 ]
回复

使用道具 举报

344#
发表于 2012-2-17 15:41:52 | 只看该作者
目前是小问题,说明里面规范一下ID, 都用0X07 这样表示吧

原因是: 如图,分区时, 如果参数使用0X17 ,显示也是0X17,  0X0C,也显示0X0C

分区信息对应的是 其十进制

但是,分区时, 如果参数使用 17 ,显示的是17的十六进制 0X11
也就是 只有0X17这样才写入十六进制

未命名.JPG (51.39 KB, 下载次数: 183)

未命名.JPG

未命名1.JPG (71.1 KB, 下载次数: 186)

未命名1.JPG
回复

使用道具 举报

345#
发表于 2012-2-17 15:45:31 | 只看该作者
这十六个部分分别代表什么?

0X80 启动                                   0X0C 分区类型    其它是什么?
回复

使用道具 举报

346#
发表于 2012-2-17 15:49:40 | 只看该作者
是这样吗?

分区表64个字节,一共可以描述4个分区表项,每一个分区表项可以描述一个主分区或一个扩展分区(比如上面的分区表,第一个分区表项描述主分区C盘,第二个分区表项描述扩展分区,第三第四个分区表项填零未用)

每一个分区表项各占16个字节,各字节含义如下:(H表示16进制)

字节位置
内容及含义

第1字节
引导标志。若值为80H表示活动分区;若值为00H表示非活动分区。

第2、3、4字节
本分区的起始磁头号、扇区号、柱面号

第5字节
分区类型符:

00H——表示该分区未用

06H——FAT16基本分区

0BH——FAT32基本分区

05H——扩展分区

07H——NTFS分区

0FH——(LBA模式)扩展分区

83H—— Linux分区

第6、7、8字节
本分区的结束磁头号、扇区号、柱面号

第9、10、11、12字节
本分区之前已用了的扇区数

第13、14、15、16字节
本分区的总扇区数

7.JPG (98.47 KB, 下载次数: 187)

7.JPG
回复

使用道具 举报

347#
 楼主| 发表于 2012-2-17 17:51:25 | 只看该作者
原帖由 dvd008 于 2012-2-17 15:49 发表
是这样吗?

分区表64个字节,一共可以描述4个分区表项,每一个分区表项可以描述一个主分区或一个扩展分区(比如上面的分区表,第一个分区表项描述主分区C盘,第二个分区表项描述扩展分区,第三第四个分区表项 ...



正点!!!!!


有一点 :
第9、10、11、12字节
”本分区之前已用了的扇区数“ 不是很准确, 表示"本分区的起始扇区号(LBA)"
回复

使用道具 举报

348#
 楼主| 发表于 2012-2-17 18:02:58 | 只看该作者

[更新168#351]PECMD-32.2012.1除夕版.多窗口多线-U34+裸机系统+18M酷MiniPE

[更新168#351]PECMD-32.2012.1除夕版.多窗口多线-U34+裸机系统+18M酷MiniPE


PECMD-32.2012.1除夕版.多窗口多线-U34(已升级) +裸机系统 抢鲜版 + 18M-COOL  MiniPE(已升级)
***已通过启动PE测试***
下载: http://mdyblog.blog.163.com/blog/static/106150119201202591855298/


168#351楼 U34  MSTR 支持直接得到空格引号确定的字串


│MSTR    变量名=字符串<字串号>     
│MSTR    变量名=字符串<~字串号>     
├──────────────────────────────────
│■字串号: 数值>=1,返回第几个字串。字串由空格"确定。<>是要输入的标志。有~则去掉最外的一对"

MSTR aStr=1 "a b c" 3<~2>  
返回值为a b c。

MSTR aStr=1 "a b c" 3<2>  
返回值为"a b c"。


获得子串其它方法

2>  LAMBDA  // 实际是内嵌的匿名函数, 不需要到外面定义一个函数体,再回来调用。而是按需定义并使用。
[]1 "a b c" 3 { ENVI aStr=%2}
[]1 "a b c" 3 { ENVI aStr=%~2}

3>  子函数
_SUB  STR2
   ENVI %1=%3   
_End
_SUB  STR2_
   ENVI %1=%3   
_End

STR2   aStr 1 "a b c" 3
STR2_  aStr 1 "a b c" 3

[ 本帖最后由 2012abc19701 于 2012-2-17 18:07 编辑 ]
回复

使用道具 举报

349#
发表于 2012-2-17 18:29:34 | 只看该作者
不是必须的

pecmd load getmbr.wcs
PECMD "TEAM PART list part 0#1,name|  MESS  part0--1[%name%]"

两个显示结果, 分区标志,能否都显示为 0X0C  这样的16进制?
如果麻烦,就不用了.
回复

使用道具 举报

350#
 楼主| 发表于 2012-2-17 18:57:48 | 只看该作者

[更新169#353]PECMD-32.2012.1除夕版.多窗口多线-U35+裸机系统+18M酷MiniPE

[更新169#353]PECMD-32.2012.1除夕版.多窗口多线-U35+裸机系统+18M酷MiniPE


PECMD-32.2012.1除夕版.多窗口多线-U35(已升级) +裸机系统 抢鲜版 + 18M-COOL  MiniPE(已升级)
***已通过启动PE测试***
下载: http://mdyblog.blog.163.com/blog/static/106150119201202591855298/

169#353楼 U35  兼容模式嵌套变量
回复

使用道具 举报

351#
 楼主| 发表于 2012-2-17 18:59:08 | 只看该作者
原帖由 bahmo 于 2012-2-17 14:49 发表

U32試過把空格拿掉也不行,
U33 OK了,感謝了

但是
CALL @子程式
_SUB 子程式,W350H100,新視窗PECMD2012.1.28,,
        CHEK 選取框1,L8T15W200H20,測試pecmd選取框1,,0
        CHEK 選取框2,L8T4 ...



A:
用U35 。

U35 執行畫面顯示
法一
法二
1
回复

使用道具 举报

352#
发表于 2012-2-17 19:16:31 | 只看该作者
34,35
目前没有发现问题!!

无参数的
SHOW,可以分配盘符了

[ 本帖最后由 dvd008 于 2012-2-17 19:22 编辑 ]
回复

使用道具 举报

353#
 楼主| 发表于 2012-2-17 20:10:42 | 只看该作者
原帖由 dvd008 于 2012-2-17 18:29 发表
不是必须的

pecmd load getmbr.wcs
PECMD "TEAM PART list part 0#1,name|  MESS  part0--1[%name%]"

两个显示结果, 分区标志,能否都显示为 0X0C  这样的16进制?
如果麻烦,就不用了.



U36 可以。 加 -hextp 开关
│PART [-hextp] list part               [磁盘[#分区]],变量名
  -hextp 类型为16进制0xNN。   
pecmd "TEAM part -hextp list part 0#1,v| MESS part 0_1:[%v%]"

回复

使用道具 举报

354#
发表于 2012-2-17 22:37:06 | 只看该作者
感谢楼主制作分享了。
回复

使用道具 举报

355#
发表于 2012-2-18 07:59:27 | 只看该作者
着几天对PECMD的分区功能有所理解了,因此,
取消PBR 写入的支持请求. 因为比较麻烦.需要的代码可能很多.

目前版本,已经非常好地支持分区对齐等操作了,完全祢补了NT5分区问题.

PBR还是使用MS的BOOTSECT解决,或者BOOTICE这个工具.

PBR硬盘分区引导记录,它是由FORMAT高级格式化命令写在各个分区开始处第一个扇区
(如:主分区C:从1磁头0柱面1扇区=逻辑1扇区=绝对63扇区)开始,那么
C:区逻辑1扇区就是DBR所存放的位置)的一段数据.这段数据主要由以下几个部分组成:

1.占3个字节的跳转指令;   
2.占8个字节的操作系统厂商标识及版本号;   
3. 占19个字节的分区参数表(又称BPB),里面存放着对该分区进行读写操作时所必备的参数(如该分区内每扇区所包含的字节数、每簇

扇区数、每个磁道的扇区数、该分区FAT份数等);   4.占480个字节的DOS引导代码,它负责把DOS引导文件IO.SYS、MSDOS.SYS装入

内存;   
5.占2个字节的结束标志字;   
以上5个部分也正好占1个扇区;和MBR有所不同的是:PBR扇区后面一般就紧接着存放该分区的FAT;PBR部分出了问题,通常会出现"

未格式化的分区"的错误
回复

使用道具 举报

356#
发表于 2012-2-18 09:39:27 | 只看该作者
用U36测试LPOS和RPOS。
测试语句:
LPOS x=123a5-123a5-123a5,a,1
RPOS y=123a5-123a5-123a5,a,1
mess x=%x%,y=%y%@cs#ok
测试结果:
显示x=16,y=14。
我觉得正确值应该是x=4,y=16。

[ 本帖最后由 lmle 于 2012-2-18 09:44 编辑 ]
回复

使用道具 举报

357#
 楼主| 发表于 2012-2-18 12:31:24 | 只看该作者

[更新171#360]PECMD-32.2012.1除夕版.多窗口多线-U37+裸机系统+18M酷MiniPE

[更新171#360]PECMD-32.2012.1除夕版.多窗口多线-U37+裸机系统+18M酷MiniPE


PECMD-32.2012.1除夕版.多窗口多线-U37(已升级) +裸机系统 抢鲜版 + 18M-COOL  MiniPE(已升级)
***已通过启动PE测试***
下载: http://mdyblog.blog.163.com/blog/static/106150119201202591855298/

171#360楼 U37  FIX
回复

使用道具 举报

358#
 楼主| 发表于 2012-2-18 12:31:54 | 只看该作者
原帖由 lmle 于 2012-2-18 09:39 发表
用U36测试LPOS和RPOS。
测试语句:
LPOS x=123a5-123a5-123a5,a,1
RPOS y=123a5-123a5-123a5,a,1
mess x=%x%,y=%y%@cs#ok
测试结果:
显示x=16,y=14。
我觉得正确值应该是x=4,y=16。


U37
x=4,y=16。
回复

使用道具 举报

359#
发表于 2012-2-18 13:01:36 | 只看该作者
非常感谢!
用你的PECMD做的一个小工具快完工了,呵呵。
回复

使用道具 举报

360#
 楼主| 发表于 2012-2-18 16:02:52 | 只看该作者
原帖由 lmle 于 2012-2-18 13:01 发表
非常感谢!
用你的PECMD做的一个小工具快完工了,呵呵。


很棒!!!!!!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-14 15:40

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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