无忧启动论坛

标题: 大家来讨论一下在基于xp的PE中安装vista的可能 [打印本页]

作者: 沙漠之子    时间: 2007-7-13 15:35
标题: 大家来讨论一下在基于xp的PE中安装vista的可能
受Gandalf大大的一句话的提醒
from:
http://www.nu2.nu/pebuilder/faq/#21

QUOTE:
When I'm writing a program how can I detect if I'm running BartPE or WinPE?

You must check if a registry key exists...

如果运行在任何版本的 PE 中,则一定有:HKLM\system\currentcontrolset\control\minint
如果运行于 BartPE, 则一定有                  : HKLM\system\currentcontrolset\control\PE Builder


使用Procmon.exe对vista的安装程序进行监控发现,果然读取HKLM\system\currentcontrolset\control\minint
使用RegWorkshop限制everyone对其的读取权限后
再运行setup.exe,发现不再提示需要2003的PE的错误提示
故我认为可与2003的pe一样能安装vista

现发现直接删除HKLM\system\currentcontrolset\control\minint即可

由于在安装过程中提示C盘空间不足,没法继续往下试,请有条件的朋友帮帮忙

[ 本帖最后由 沙漠之子 于 2007-7-15 08:07 PM 编辑 ]
作者: goffi    时间: 2007-7-13 16:23
不应该
我原来用BartPE生成的 2003 PE就可以安装VISTA,估计关键不在这里
作者: 沙漠之子    时间: 2007-7-13 16:36
原帖由 goffi 于 2007-7-13 04:23 PM 发表
不应该
我原来用BartPE生成的 2003 PE就可以安装VISTA,估计关键不在这里

我认为基于xp的pe和2003的pe
HKLM\system\currentcontrolset\control\minint
的内容可能不一样的
作者: goffi    时间: 2007-7-13 16:39
能不能把XP PE的内容贴一下
我看了一下2003 PE里这个下面是空的
作者: 沙漠之子    时间: 2007-7-13 16:48
原帖由 goffi 于 2007-7-13 04:39 PM 发表
能不能把XP PE的内容贴一下
我看了一下2003 PE里这个下面是空的

晕,xp的pe也是空的
作者: goffi    时间: 2007-7-13 16:53
;P
原来我在做WIM封装时也是做过两个PE的注册表对比,同样用BartPE生成的PE,XP的不行,2003就可以,注册表替换也不行
问题不在这里
还是和文件有关
不知道替换部分文件行不行,但是找不到问题关键所在
作者: 沙漠之子    时间: 2007-7-13 17:12
我认为可能没有HKLM\system\currentcontrolset\control\minint,安装程序把它当作了xp系统吧
作者: goffi    时间: 2007-7-13 17:24
原帖由 沙漠之子 于 2007-7-13 05:12 PM 发表
我认为可能没有HKLM\system\currentcontrolset\control\minint,安装程序把它当作了xp系统吧


奇怪的就是XP本身是可以安装VISTA的,做成PE就不行,似乎文件问题也不存在
注册表问题,用2003 PE的替换也解决不了
作者: 沙漠之子    时间: 2007-7-13 18:03
安装vista真郁闷

C盘空间不知,我用虚拟磁盘解决了,现在有提示
not enough space for temporary files ,need at least 434 Mb of space on any partition for temporary files.

不知如何处理
作者: zhaohj    时间: 2007-7-13 18:09
测试了(在虚拟机中,精简的VISTA安装盘,内存调到524M),老毛桃的PE,删除了HKLM\system\currentcontrolset\control\minint,安装VISTA,SETUP.EXE运行听到检测软驱一声退出.
作者: goffi    时间: 2007-7-13 18:38
原帖由 沙漠之子 于 2007-7-13 06:03 PM 发表
安装vista真郁闷

C盘空间不知,我用虚拟磁盘解决了,现在有提示
not enough space for temporary files ,need at least 434 Mb of space on any partition for temporary files.

不知如何处理


虚拟机里测试比较方便
作者: zhaohj    时间: 2007-7-13 18:39
虽然没成功,看到在C盘生成了一些文件,大家看看:

[ 本帖最后由 zhaohj 于 2007-7-13 06:43 PM 编辑 ]

Snap2.jpg (60.4 KB, 下载次数: 51)

Snap2.jpg

作者: goffi    时间: 2007-7-13 18:46
原帖由 zhaohj 于 2007-7-13 06:39 PM 发表
虽然没成功,看到在C盘生成了一些文件,大家看看:


貌似INSTALL.WIM文件中的信息,144M的PE镜像
;P
作者: lxl1638    时间: 2007-7-13 19:02
这个是PE2.0的信息(BOOT.WIM),你帖全文出来看看。

INSTALL.WIM不是这些信息的。

[ 本帖最后由 lxl1638 于 2007-7-13 09:08 PM 编辑 ]
作者: haonan    时间: 2007-7-13 19:28
原帖由 沙漠之子 于 2007-7-13 03:35 PM 发表
受Gandalf大大的一句话的提醒


使用Procmon.exe对vista的安装程序进行监控发现,果然读取HKLM\system\currentcontrolset\control\minint
使用RegWorkshop限制everyone对其的读取权限后
再运行setup.exe,发 ...

试了一下,不行,直接就报错,看不懂的错
作者: 沙漠之子    时间: 2007-7-13 19:30
那就截个图上来看看呀
作者: netwinxp    时间: 2007-7-13 19:40
原帖由 沙漠之子 于 2007-7-13 18:03 发表
安装vista真郁闷

C盘空间不知,我用虚拟磁盘解决了,现在有提示
not enough space for temporary files ,need at least 434 Mb of space on any partition for temporary files.

不知如何处理

虚拟硬盘多大?设个20G试试;P
作者: netwinxp    时间: 2007-7-13 19:43
另外监控下Vista读哪些文件,用绑架法在安装前把PE的那些文件暂时用2003的绑架一下看看;P
作者: haonan    时间: 2007-7-13 20:02
原帖由 沙漠之子 于 2007-7-13 07:30 PM 发表
那就截个图上来看看呀

图来了:L :L
会不会是xp的pe少了某些文件

[ 本帖最后由 haonan 于 2007-7-13 08:06 PM 编辑 ]

2.JPG (26.25 KB, 下载次数: 47)

2.JPG

作者: 沙漠之子    时间: 2007-7-13 20:21
好像是字体显示问题,我这全显示为英文

你那显示为汉字,而有些汉字字体缺失
作者: nn2nn    时间: 2007-7-13 21:32
提示: 作者被禁止或删除 内容自动屏蔽
作者: neo4026    时间: 2007-7-13 22:22
按道理说应该不难做吧?
作者: cdy168    时间: 2007-7-14 01:57
好像很难找出问题的所在~!~!~!
作者: zhaohj    时间: 2007-7-15 14:38
今天想从版本信息着手,修改KERNEL32.DLL及SYSDM.CPL,还是不成功。有一点不明白,把PE03的这两个文件替换到XPE系统中竟然无法启动,看看这两个文件结构也差不多。

期待高手出招!!!
作者: yamingw    时间: 2007-7-15 15:35
vista setup 通过底层api来得到当前环境参数,如果修改就有很多地方,首先是ntoskrnl.exe,还有KERNEL32.DLL等好多文件,改过之后其它系统软件很可能出错。有一种方法是专门编写一个程序来截取vista setup的api调用转换为XP的系统调用。如果vista setup只是判断一下版本号那还好办,如果它调用了2003专有的函数可就麻烦了.
作者: king8462    时间: 2007-7-15 19:04
提示: 作者被禁止或删除 内容自动屏蔽
作者: 沙漠之子    时间: 2007-7-15 20:06
原帖由 yamingw 于 2007-7-15 03:35 PM 发表
vista setup 通过底层api来得到当前环境参数,如果修改就有很多地方,首先是ntoskrnl.exe,还有KERNEL32.DLL等好多文件,改过之后其它系统软件很可能出错。有一种方法是专门编写一个程序来截取vista setup的api调 ...


同意,最好用谁能编个专门的程序能让setup识别为2003系统,或者直接跳到在2003PE下的安装进程

如果,setup真的调用2003采用的某些函数的话就麻烦了
作者: ones    时间: 2007-7-15 21:03
老毛桃不是已经把2003pe安装vista需要的文件列出来了吗?可以从那几个文件入手,对比那几个文件和XP的有什么不同.
作者: uepon    时间: 2007-7-16 11:48
这些不是03下面安装VISTA必须的吗,加进XP的PE试试
ATL.DLL
CABINET.DLL
CLUSAPI.DLL
CREDUI.DLL
DMADMIN.EXE
DMINTF.DLL
DMSERVER.DLL
DMUTIL.DLL
OSUNINST.DLL
RICHED20.DLL
RTUTILS.DLL
VDS.EXE
VDSBAS.DLL
VDSDYNDR.DLL
VDSLDR.EXE
VDSUTIL.DLL
VDS_PS.DLL

作者: neo4026    时间: 2007-7-16 12:16
有这么容易高手们早做出来了
作者: goffi    时间: 2007-7-16 12:54
原帖由 uepon 于 2007-7-16 11:48 AM 发表
这些不是03下面安装VISTA必须的吗,加进XP的PE试试

这些只是VISTA安装时必须的文件,并不是在启动安装是安装程序检测版本的关键
所以研究这些文件是没有用的

不过按照我原来测试的结果,可以肯定关键不在注册表和文件
否则当初VISTA测试阶段的WIM封装XP里的PE部分就可以直接用XP PE来替代了




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