无忧启动论坛

标题: 请问pe启动时,txtsetup.sif执行完后是哪步? [打印本页]

作者: arcwayne    时间: 2007-8-1 15:58
标题: 请问pe启动时,txtsetup.sif执行完后是哪步?
根据tiancai4126大侠的总结:

硬盘启动过程:        
bios读mbr(主引导) -> mbr读pbr(分区引导) -> ntdetect.com -> ntldr -> boot.ini -> avldr.pe -> PELDR -> WINNT.SIF -> *.ISO *.IMG
                                                                                         setupldr.bin -> 安装信息文件 -> 读取镜像文件
光盘启动过程:
bios读(光盘引导信息)  -> 光盘上的 \i386\ntdetect.com  -> setupldr.bin -> TXTSETUP.SIF  ->

光盘Ramdisk启动过程:
bios读(光盘引导信息)  -> 光盘上的 \WXPE\ntdetect.com  -> setupldr.bin -> 光盘根目录\winnt.xpe -> 读取镜像文件 -> 镜像目录\WXPE\TXTSETUP.SIF  ->

我想问的是,txtsetup.sif执行完后执行什么呢,怎样调用到pecmd.ini(老毛桃的是winpe.ini)配置文件呢?我改的pe启动到滚动条后到蓝色桌面就不动了,没有载入桌面等提示(也就是没有调用pecmd.ini)!

[ 本帖最后由 arcwayne 于 2007-8-2 08:45 AM 编辑 ]
作者: arcwayne    时间: 2007-8-1 16:29
没人愿意吱一下么,我顶
作者: myBOOT    时间: 2007-8-1 16:59
还真不知道。玩Vista,认为是调用bcdedit修改bootmgr参数。
作者: ywcn    时间: 2007-8-1 16:59
偶也不会,关注ing...
作者: netwinxp    时间: 2007-8-1 17:22
硬盘启动过程:bios读mbr(主引导) -> mbr读pbr(分区引导) -> ntdetect.com -> ntldr -> boot.ini -> avldr.pe -> PELDR -> WINNT.SIF -> *.ISO *.IMG

谁在误导人啊?:@
  从PBR调入的只有NTLDR(以前DOS是IO.SYS和MSDOS.SYS),然后NTLDR再去查找\Device\Harddisk、\Device\Floppy、\Device\CDROM,然后从初始化的启动媒体按\ntdetect.com、ntdetect.com、\amd64\ntdetect.com、\i386\ntdetect.com的顺序查找到第一个ntdetect.com装入,ntdetect.com检测完总线设备后把总线上的设备信息返回给ntldr并把程序控制权返回ntldr......
  不要网上随便乱抄,网上错误的东西多呢。你可以把PBR存下来(用分区软件),然后用UE或DASM看看是不是只有装入一个ntldr,根本没有ntdetect.com!!!ntdetect.com从名字上看就知道只是起检测作用。
作者: netwinxp    时间: 2007-8-1 17:30
SETUPLDR.BIN则更怪异了,居然在内存中动态链接生成了一个只存在于内存的文件:L,但有一点可以肯定,其实启动都是从??LDR开始,并由它完成大部分的工作。LZ的三条启动路线全都是错的!!和PBR差不多,我们从Winpe的2KB的光盘启动文件用UE打开照样发现是调入SETUPLDR.BIN,只不过出错提示没改,还是写Couldn't find NTLDR

[ 本帖最后由 netwinxp 于 2007-8-1 05:41 PM 编辑 ]
作者: netwinxp    时间: 2007-8-1 17:48
在NTLDR(SETUPLDR.BIN)中涉及到的文件有:ntdetect.com、ntbootdd.sys(setupldr.bin可能没用)、bootstat.dat(setupldr.bin可能没用)、hiberfil.sys(setupldr.bin可能没用)、bootfont.bin(英文系统没用)、boot.bmp(setupldr.bin可能没用)、pagefile.sys(setupldr.bin可能没用)、boot.ini(setupldr.bin可能没用)、system32\config\system.sav(setupldr.bin可能没用)、system32\config\system(setupldr.bin是setupreg.hiv)、acpi表(不是文件,ms来自于ntdetect.com的检测结果)、ntosknl.exe、hal.dll、kdcom.dll、osloader.pdb(setupldr.bin可能没用)还有一些注册表项(应该是来自于system这个文件——winpe为setupreg.hiv),setupldr.bin则还访问了其他一些文件。

[ 本帖最后由 netwinxp 于 2007-8-1 05:58 PM 编辑 ]
作者: jndscz    时间: 2007-8-1 18:31
其实这就是为了引出高手的  我发现了
作者: netwinxp    时间: 2007-8-1 18:43
原帖由 jndscz 于 2007-8-1 18:31 发表
其实这就是为了引出高手的  我发现了

最近正在研究中,但很多结果还没弄清,所以不敢乱说,不过LZ的总结全是错的:P
作者: jjmf    时间: 2007-8-1 22:04
看SETUPREG.HIV里的setup项
作者: myBOOT    时间: 2007-8-1 23:18
如果能反汇编NTLDR多好?
作者: netwinxp    时间: 2007-8-1 23:20
为啥不行?只是看起来太累
作者: arcwayne    时间: 2007-8-2 08:44
高手啊,学习了,期望能解决我的问题
作者: arcwayne    时间: 2007-8-2 10:19
txtsetup.sif执行完后执行什么呢,怎样调用到pecmd.ini(老毛桃的是winpe.ini)配置文件呢?我改的pe启动到滚动条后到蓝色桌面就不动了,没有载入桌面等提示(也就是没有调用pecmd.ini)!




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3