无忧启动论坛

标题: 大家做x86 x64合盘时为什么不共用system32 ? [打印本页]

作者: 2012fengxi    时间: 2015-11-19 18:30
标题: 大家做x86 x64合盘时为什么不共用system32 ?
我们知道64位的PE需要兼容32位程序时需要一份32位的运行库,就放在SysWOW64文件夹,里面的东西绝大部分是32位PE的system32里的东西,如果我们做合盘时,应该可以重复利用这些系统文件。
作者: chiannet    时间: 2015-11-19 19:23
MAX SKyPE  有此选项。

这也有利有弊。
作者: mdyblog    时间: 2015-11-19 22:37
WIM打包的时候,会自动合并的,只保留一份。
作者: wjgyz740526    时间: 2015-11-19 22:52
多分卷的wim可以任意启动其中一个???
作者: wjgyz740526    时间: 2015-11-19 22:52
多分卷的wim可以任意启动其中一个???
作者: 1456403608    时间: 2015-11-19 23:50
你来啊
作者: 2012fengxi    时间: 2015-11-20 07:50
1456403608 发表于 2015-11-19 23:50
你来啊

我的方案是独立的两个wim,比如pe32.wim和pe64.wim,其中pe64.wim内并不包含32位的文件,它启动后自动调用7z解压pe32.wim里的文件到相应的文件夹,实验是成功的。
作者: hxj    时间: 2015-11-20 17:11
2012fengxi 发表于 2015-11-20 07:50
我的方案是独立的两个wim,比如pe32.wim和pe64.wim,其中pe64.wim内并不包含32位的文件,它启动后自动调 ...

此方案很好,我要在我的Win10PE_x86_x64.iso中试试
作者: hxj    时间: 2015-11-20 17:31
2012fengxi 发表于 2015-11-20 07:50
我的方案是独立的两个wim,比如pe32.wim和pe64.wim,其中pe64.wim内并不包含32位的文件,它启动后自动调 ...

此方案不错,准备试试。
不过有个问题,pe64.wim中SysWOW64目录中的文件要比pe32.wim中System32目录中的文件要少多了。你这方案是要将system32目录中的文件全部用7z解到SysWOW64目录,这会不会影响PE启动速度。
作者: hxj    时间: 2015-11-20 17:32
2012fengxi 发表于 2015-11-20 07:50
我的方案是独立的两个wim,比如pe32.wim和pe64.wim,其中pe64.wim内并不包含32位的文件,它启动后自动调 ...

此方案不错,准备试试。
不过有个问题,pe64.wim中SysWOW64目录中的文件要比pe32.wim中System32目录中的文件要少多了。你这方案是要将system32目录中的文件全部用7z解到SysWOW64目录,这会不会影响PE启动速度。
作者: hxj    时间: 2015-11-20 17:32
2012fengxi 发表于 2015-11-20 07:50
我的方案是独立的两个wim,比如pe32.wim和pe64.wim,其中pe64.wim内并不包含32位的文件,它启动后自动调 ...

此方案不错,准备试试。
不过有个问题,pe64.wim中SysWOW64目录中的文件要比pe32.wim中System32目录中的文件要少多了。你这方案是要将system32目录中的文件全部用7z解到SysWOW64目录,这会不会影响PE启动速度。
作者: hxj    时间: 2015-11-20 17:33
2012fengxi 发表于 2015-11-20 07:50
我的方案是独立的两个wim,比如pe32.wim和pe64.wim,其中pe64.wim内并不包含32位的文件,它启动后自动调 ...

此方案不错,准备试试。
不过有个问题,pe64.wim中SysWOW64目录中的文件要比pe32.wim中System32目录中的文件要少多了。你这方案是要将system32目录中的文件全部用7z解到SysWOW64目录,这会不会影响PE启动速度。
作者: 2012fengxi    时间: 2015-11-20 20:19
hxj 发表于 2015-11-20 17:33
此方案不错,准备试试。
不过有个问题,pe64.wim中SysWOW64目录中的文件要比pe32.wim中System32目录中的 ...

你自己试一试吧,解压速度极快,几秒而已
作者: hxj    时间: 2015-11-20 21:40
本帖最后由 hxj 于 2015-11-20 21:50 编辑
2012fengxi 发表于 2015-11-20 20:19
你自己试一试吧,解压速度极快,几秒而已


解压命令是否写入PECMD.ini
用7z命令解压不能选择只解压WIM中的System32目录,是全部解压后再用xcopy命令?再删除解压目录(减小临时目录空间占用)
作者: 2012fengxi    时间: 2015-11-20 21:51
hxj 发表于 2015-11-20 21:40
解压命令是否写入PECMD.ini
用7z命令解压不能选择只解压WIM中的System32目录,是全部解压后再用xcopy命 ...

PE64.WIM里保留有syswow64文件夹,和syswow64\zh-cn文件夹,里面为空
用以下命令:
7z e -ox:\windows\syswow64 u:\pe\pe.wim windows\system32\*.*
7z e -ox:\windows\syswow64\zh-cn u:\pe\pe.wim windows\system32\zh-cn\*.*
作者: hxj    时间: 2015-11-20 21:57
本帖最后由 hxj 于 2015-11-20 22:20 编辑
2012fengxi 发表于 2015-11-20 21:51
PE64.WIM里保留有syswow64文件夹,和syswow64\zh-cn文件夹,里面为空
用以下命令:
7z e -ox:\windows\ ...


谢谢了,对7z命令不熟悉,查help也没看到有 U:  只有O
你这里的 U:是指U盘途径?,这可是个不确定的(不同电脑是不一样的),还需要有个定位U盘盘符的命令才行的。,
作者: hxj    时间: 2015-11-20 22:25
不同电脑U盘盘符是不一样的,要通用就必须先定位后将盘符导入你提供的命令中才行的,这又是个问题。
作者: 2012fengxi    时间: 2015-11-20 22:36
hxj 发表于 2015-11-20 22:25
不同电脑U盘盘符是不一样的,要通用就必须先定位后将盘符导入你提供的命令中才行的,这又是个问题。

这倒不是问题,你找一下有些PE能自动找到外置程序包并自动加载,同样原理找到pe.wim也不难,不管盘符是什么都可以找到
作者: hxj    时间: 2015-11-20 22:45
2012fengxi 发表于 2015-11-20 22:36
这倒不是问题,你找一下有些PE能自动找到外置程序包并自动加载,同样原理找到pe.wim也不难,不管盘符是什 ...

我到有一个定位U盘的命令:
for %%i in (z,y,x,w,v,u,t,s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c) do vol %%i:>nul 2>nul && if exist %%i:\Boot\PE32.WIM set usb=%%i

下面用%USB%:就行了
作者: wylgogogo    时间: 2015-11-20 23:26
   这方法不错。得学习下。
作者: hxj    时间: 2015-11-20 23:43
本帖最后由 hxj 于 2015-11-20 23:45 编辑

很遗憾,没能成功,可能我的x64启动还会用到syswow64中的文件,启动时中途提示找不到imdisk.inf (syswow64\inf目录),可能还涉及syswow64\imdisk.exe,难道x64中还需要x86的imdisk来加载虚拟盘?

不过如能成功,ISO体积大约能减小近100M
作者: hxj    时间: 2015-11-21 00:20
system32中有明明有64位的imdisk,不知为什么会调用syswow64中的,我用的是fish2006的Win10PE,暂时没找到问题所在原因。
pecmd.ini有EXEC !=%Curdir%\InfDefaultInstall  X:\Windows\INF\imdisk.inf
作者: tt2016    时间: 2015-11-21 06:57
或许以后就有这样的了
作者: 2012fengxi    时间: 2015-11-21 08:10
hxj 发表于 2015-11-21 00:20
system32中有明明有64位的imdisk,不知为什么会调用syswow64中的,我用的是fish2006的Win10PE,暂时没找到问 ...

用注册表的办法解决imdisk安装吧 Imdisk.7z (542 Bytes, 下载次数: 0)
一般我不喜欢用imdisk,我用osfmount,它不用手动安装驱动,当你运行它创建虚拟盘时,它会在后台自动安装驱动
比如创建内存盘用
EXEC !=osfmount.com -a -t vm -s 64M -m y:
EXEC !=format y: /y /q /fs:ntfs /c /v:Ramdisk


作者: hhh333    时间: 2015-11-21 09:00
我的早就是这样的啊!启动时挂32位的内核WIM,根据一个列表将它复制到64位的syswow64上去。
作者: mdyblog    时间: 2015-11-21 09:31
2012fengxi 发表于 2015-11-21 08:10
用注册表的办法解决imdisk安装吧
一般我不喜欢用imdisk,我用osfmount,它不用手动安装驱动,当你运行它 ...

imdisk 也可以自动后台安装驱动。

RAMD ImDisk,L64,NTFS,B:,ImDisk1

就可以的。
作者: mdyblog    时间: 2015-11-21 09:33
hxj 发表于 2015-11-21 00:20
system32中有明明有64位的imdisk,不知为什么会调用syswow64中的,我用的是fish2006的Win10PE,暂时没找到问 ...

用新版PECMD (>=71Stable)

会自动安装Imdisk的。

作者: devilma    时间: 2015-11-21 15:22
学习哦了,谢谢⊙_⊙




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