Board logo

标题: 研究diskcopy.dll,发现xp和vista中ms-dos 8.0的制作秘密 [打印本页]

作者: fujianabc     时间: 2007-12-11 14:16    标题: 研究diskcopy.dll,发现xp和vista中ms-dos 8.0的制作秘密

最近听说了一个叫bootflashdos的工具能直接从xp/2003的diskcopy.dll中提取dos 8.0,来制作启动盘,比较有意思,我稍微研究了一下xp和vista的diskcopy.dll,发现里面还真有些秘密的东东。
先来看xp的diskcopy.dll,把它拖入winimage,可以识别出一个1.44MB的软盘镜像,内容就是xp的dos启动盘中的文件,保存这个镜像。用winhex打开,并选择"解释镜像为磁盘",可以看到里面除了可见的文件外,还能看见有许多删除或覆盖的文件,其中前面有问号的是能恢复文件,叉号的是已被覆盖的文件。
恢复这些文件,可以看出这张启动盘就是在原来winme启动盘基础上修改而来的,其中还能见到修改前的io.sys和command.com的身影,以及ms-dos 8.0中被去掉的himem.sys。具体还可以看这个链接,里面有更详细的分析:
http://mirror.href.com/thestarman/winxp/winxpsd.htm

我又看了一下vista的diskcopy.dll,发现winimage不能直接打开,但用winhex能很容易得找出其中的ms-dos 8.0软盘镜像,保存后用winhex打开,发现里面的dos文件又被更新了,而且包含了更多的删除覆盖文件,除了一些原有的winme启动盘文件外,还多了几个2005年的文件,估计这些就是在winvista开发时制作的,打开?eame.txt(就是readme.txt)内容如下:
DOS Boot Disk Readme
======================
May 25, 2001
Aidan Low (aidanl@microsoft.com)

This directory contains the files that make up the DOS boot disk on whistler.

06/08/2000  05:00 PM            58,870 EGA2.CPI
06/08/2000  05:00 PM            58,753 EGA3.CPI
06/08/2000  05:00 PM            58,870 EGA.CPI
06/08/2000  05:00 PM            21,607 KEYB.COM
06/08/2000  05:00 PM            34,566 KEYBOARD.SYS
06/08/2000  05:00 PM            31,942 KEYBRD2.SYS
06/08/2000  05:00 PM            31,633 KEYBRD3.SYS
06/08/2000  05:00 PM            13,014 KEYBRD4.SYS
06/08/2000  05:00 PM            29,239 MODE.COM
06/08/2000  05:00 PM            93,040 COMMAND.COM
06/08/2000  05:00 PM            17,175 DISPLAY.SYS
04/07/2001  01:40 PM                 9 MSDOS.SYS   <-- should be system, readonly, hidden when copied to the floppy
05/15/2001  06:57 PM           116,736 IO.SYS      <-- should be system, readonly, hidden when copied to the floppy

To prepare the disk image for the DOS boot disk, create a system disk on a Win9X Machine so that the boot sector is created properly.

Then copy these files over, setting the appropriate attributes. (the attributes are called out in the list above)

Finally, use the imgtool.exe tool to create a disk image from the floppy.  Typically this will be something like

imgtool.exe \\.\a: c:\myimage.bin

======================
其中竟然讲的是2001年5月时winxp中dos 8.0启动盘的制作过程,而不是vista中得启动盘,制作人是Aidan Low。里面用到的imgtool.exe在vista的dos 8.0启动盘中也可以恢复。

[ Last edited by fujianabc on 2008-4-19 at 09:13 PM ]
附件 1: xp.png (2007-12-11 14:16, 14.54 K, 下载附件所需积分 1点 ,下载次数: 5)


附件 2: vista.png (2007-12-11 14:16, 17.27 K, 下载附件所需积分 1点 ,下载次数: 3)



作者: omnifs     时间: 2007-12-11 19:07
超强,居然外决出了微软制作dos 8.0的秘密。
作者: maclover815     时间: 2007-12-16 22:00
nice
作者: tigerdos     时间: 2008-1-6 13:36
强,支持,继续努力,先学习了
作者: chinawolfer     时间: 2008-1-11 21:23
厉害啊,呵呵 ,学习了
作者: bugaoxing     时间: 2008-1-13 12:17
呵呵,牛人,那么有心情研究这东西啊!多谢分享了!
作者: 2005wind     时间: 2008-1-13 20:53
学习咯~~~~~~~~~~~~~
作者: weihai6688     时间: 2008-1-14 12:02
历害。
作者: llrrqq     时间: 2008-4-16 14:59
很好!努力学习,谢谢.
作者: dengke227     时间: 2008-4-16 22:21
flashbootdos的工具能直接从xp/2003的diskcopy.dll中提取dos 8.0,来制作启动盘

研究一下这个,谢谢楼主共享!
作者: tangfu     时间: 2008-4-17 19:34
强人,赶快学习。。。
作者: dengke227     时间: 2008-4-17 22:15
“flashbootdos的工具能直接从xp/2003的diskcopy.dll中提取dos 8.0,来制作启动盘”
谢谢楼主指点,马上试一下!
作者: infoer     时间: 2008-4-18 15:04
2008的diskcopy.dll和vista的是否也一样?
作者: fujianabc     时间: 2008-4-18 15:13


  Quote:
Originally posted by infoer at 2008-4-18 03:04 PM:
2008的diskcopy.dll和vista的是否也一样?

我看过,diskcopy.dll中的镜像有两种,以2005年为界,2005年前的都是我列的第一种(如xp sp2,2003 sp1),2005年之后都是第二种(包括xp sp3, 2003 sp2,vista,vista sp1/2008)
作者: willsion     时间: 2008-4-18 20:55
真是够强的,佩服。。。。。。。。。
作者: tianxingren     时间: 2008-5-2 19:36
支持,继续努力,先学习了
作者: Auto     时间: 2008-5-20 10:40
diskcopy.dll? 是不是指XP安装盘里那个DISKCOPY.DL_ 展开得到的?
作者: zylh     时间: 2008-5-23 22:06
格式化软盘时就可以制作出系统盘来,只是把文件隐藏在那么个dll里了吧。
作者: lqyhk1234     时间: 2008-7-6 17:47
牛人
作者: jiayi333     时间: 2008-10-20 02:55
真牛啊

这都能研究出来  见识了  也学了 谢谢楼主
作者: oliver4     时间: 2008-10-20 12:15
谁能把flashbootdos传上来?