|
11#
楼主 |
发表于 2020-2-25 19:55:26
来自手机
|
只看该作者
本帖最后由 liuzhaoyzz 于 2020-2-25 20:08 编辑
527104427 发表于 2020-2-25 18:24
这个很简单啊:
PUTF %Desktop%\grldr.mbr,0x5a,0x80
能否直接PUTF C:,0x6a,0x80?我想修改某个分区所在的硬盘的MBR?不是修改grldr.mbr文件。
查看了下pecmd-putf帮助,似乎只能改文件内容?5大的意思是说,先修改grldr.mbr,然后用bootice写入MBR是吗?我看了grldr.mbr这个文件的0x5a默认就是80啊,不需要改啊?
┣━━┿━━┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
┃ │命令│'PUTF' ┃
┃ ├──┼──────────────────────────────────────────────┨
┃ │格式│PUTF[.][#] [-16] 文件名,[起始位置[#长度限制]],<数据队列|PE变量名|#[.]内部数据ID[|目录]>┃
┃ │ │PUTF -dd [-bs=BS] [-ibs=BS] [-obs=BS] [-count=COUNT] [-len=LEN] [-skip=SKIP] [-skipb=SKIPB] ┃
┃ │ │ [-conv=notrunc] [-quick|-qspace] <文件名>,[输出起始位置],输入文件名 ┃
┃ ├──┼──────────────────────────────────────────────┨
┃ │功能│以 BINARY 形式修改指定文件的数据。后缀#为直接2进制写入PE对象,最多可多写2字节,为0。 ┃
┃ ├──┼──────────────────────────────────────────────┨
┃ │参数│■文件名: 已存在的文件名,支持环境变量解释;-16:数据队列为16进制 -v:写PE变量 ┃
┃ │ │■起始位置: 数值,相对于文件基址的起始位置,支持16进制数值,如 0x100;从0开始。默认0。 ┃
┃ │ │ 可带TGMKS后缀。没有#长度限制就是全部数据。 ┃
┃PUTF│ │■数据队列: [*重复因子] 数值,从起始位置开始写入的数据,多个数值之间用空格分隔,如 *1M 0x00 ┃
┃ │ │ 0x23 0xAD *1K 0x1C 128。资源内部数据ID位于"EXEDATA"下;"."表示不自动解压。 ┃
┃ │ ├──────────────────────────────────────────────┨
┃ │ │ 格式2为高速2进制块传送模式。BS为块字节,COUNT为块数,SKIP为输入文件文件起始块数,SKIPB为输 ┃
┃ │ │ 入文件文件起始字节数,可带TGMKS。文件名可不存在。-conv=notrunc:不缩短已存在的文件。输入文 ┃
┃ │ │ 件名可为zero表示清0.-quick稀疏文件。-qspace迅速分配空间。逻辑盘A:-Z:, 光驱\\.\CDROM0~N, 磁 ┃
┃ │ │ 带\\.\TAPE0~N,磁盘 \\.\PhysicalDrive0~N ,NUL为哑文件。LEN长度字节数,优先于COUNT。 ┃
┃ │ │ -fd=文件句柄:写文件加速 ┃
┃ ├──┼──────────────────────────────────────────────┨
┃ │示例│PUTF %CurDir%\Memu.DAT,0x400,0x23 0xAD 0x1C 0x80 0x6F 或 PUTF* A.DAT,,#100 ┃
┃ ├──┼──────────────────────────────────────────────┨
┃ │备注│※PUTF命令修改文件的起始位置是相对于文件基址的,并以复盖方式修改文件,不会改变文件的长度;但┃
┃ │ │ 新文件不受长度限制。新文件但指定>1 的起始位置,或远过文件尾,中间会留下一个洞(NTFS等高级系┃
┃ │ │ 统上不占磁盘);也没什么不利影响。PUTF*可以扩大文件。后缀“.”表示直接写入文本(ANSI)。 ┃
┃ │ │※以 BINARY 方式读取文件的对应命令是 GETF;长度限制只对PE变量名和内部数据ID有效。 ┃
┃ │ │※以字符串方式读取文件或修改文件的命令为 READ 命令和 WRIT 命令。 ┃
┃ │ │※资源可以写为:"[文件名]""#资源名[|目录名]" 后面1对""可省。此时资源名可为非数字。 ┃
┃ │ │※支持 \\?\Harddisk0Partition2\A.TXT \\?\HarddiskVolume5\A.TXT \\?\ImDisk0\A.TXT ┃
┃ │ │※文件名以&开始则为PE变量 |
|