无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 3566|回复: 28
打印 上一主题 下一主题

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[复制链接]
跳转到指定楼层
1#
发表于 2004-5-10 09:41:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
[UploadFile=34_2225.zip][这个贴子最后由benjaminwan在 2004/10/20 07:10am 第 2 次编辑]

[1]让你的Ghost XP盘更加自动化--自动选择计算机类型原理简述
[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现
上一篇文章中提到在Microsof Windows企业工具部署指南中的一段话:
要将 Sysprep 作为磁盘复制过程的一部分使用,必须符合以下要求:
主安装和目标计算机必须有兼容的硬件抽象层 (HAL)。例如,HAL APIC 和 HAL MP(多处理器系统)是兼容的,但 HAL PIC(可编程中断控制器)与 HAL APIC 或 HAL MP 不兼容。
但是随着ACPI选择器的出现,这句话应该改成: 主安装和目标计算机完全不必有兼容的硬件抽象层 (HAL)。
我十分佩服万能Ghost XP制作探索者和ACPI选择器制作与改进者们的创新精神,他们留给我的不仅仅是宝贵的资料。
现在对上篇文章所提到的内容做一次方法总结:
1全新安装系统,系统文件夹默认为C:\windows
2放入New Setup XP Disk用I386\winnt32 /unattend: I386\winnt.sif /noreboot /makelocalsource进行安装,路径自己补上
其中winnt.sif必须是可以用于完全无人职守安装的,并在winnt.sif中设置安装目的地为非windows目录,比如Benjamin
3精简上一步复制到硬盘的New Setup XP Disk
4按普通方法重新封装XP,并在注册表里设置自动检测计算机类型的批处理在你想要它运行的时候运行。
这样做的结果:
1重启后先进入硬盘上被精简的New Setup XP安装,安装过程中会把对应的HAL文件改名复制到\Benjamin\system32,文件名为hal.dll
2第1步完成后重启,想办法让它进入Ghost XP的安装,最后通过\Benjamin\system32\hal.dll来判断计算机类型,并执行相应的操作。
接下来介绍如何检测:
这是我的方法,但可能不是最好的方法,仅供参考
用到的工具
FC:命令行下用于比较两个文件不同之处的工具,存在于\windows\system32\下
仅此一个工具,而且还是系统自带的。
用FC把上篇文章中所提到的各种硬件抽象层 (HAL)既hal.dll、halacpi.dll、halapic.dll halmps.dll、halsp.dll、halaacpi.dll、halmacpi.dll和\Benjamin\system32\hal.dll逐个对比,找到相同的文件就在当前的系统中执行相应的操作。
2#
发表于 2004-5-10 10:03:31 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[这个贴子最后由死性不改在 2004/05/11 04:35pm 第 4 次编辑]


我认为不需要进行比较判断过程,只需要把Text Mode Setup过程产生的hal.dll和
ntoskrnl.exe复制到windows\system32目录就可以了,当然这样处理的话就一定要
把它放在cmdline处执行,这样重启后,系统就会以当前加载的hal为基础进行封装过程
并重写注册表。事实上系统rundll32命令本身也是“仅复制安装”,并不同时修改注册表,
只是如果在设备管理器中进行操作时,执行的不仅仅是rundll32、、、、
才同时完成了注册表的更新而已。
回复

使用道具 举报

3#
发表于 2004-5-10 10:33:17 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

对两位老大我只有佩服的份,说实话,小弟对这些都很感兴趣,不过确实是基础太差,技术性的文章基本上看不懂,所以只好精神上支持一下,毕竟,像我一样的人目前还是大多数,也希望两位老大多多原谅……
回复

使用道具 举报

4#
发表于 2004-5-10 10:38:06 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

但我学呀,试呀.
回复

使用道具 举报

5#
发表于 2004-5-10 11:18:08 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

正在试验中
回复

使用道具 举报

6#
发表于 2004-5-10 11:49:55 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[UploadFile=34_2225_5.rar]这是我修改过的文件,有兴趣的不妨测试一下。
回复

使用道具 举报

7#
发表于 2004-5-10 11:51:20 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[UploadFile=34_2225_6.rar]以下是另外一个压缩包part01
回复

使用道具 举报

8#
发表于 2004-5-10 11:52:05 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[UploadFile=34_2225_7.rar]part02
回复

使用道具 举报

9#
发表于 2004-5-10 11:52:51 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[UploadFile=34_2225_8.rar]part03
回复

使用道具 举报

10#
发表于 2004-5-10 11:53:32 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[UploadFile=34_2225_9.rar]part04
回复

使用道具 举报

11#
发表于 2004-5-10 11:54:06 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[UploadFile=34_2225_10.rar]part05
回复

使用道具 举报

12#
发表于 2004-5-10 11:58:58 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

[UploadFile=34_2225_11.rar]part06
要恢复到非Standard PC的计算机才能看出效果,
避免了由于封装过程使用的硬件基础---硬件抽象层hal和
实际的不同,导致进入系统后将再次根据实际硬件基础进行
第二次的硬件检测的问题。
回复

使用道具 举报

13#
发表于 2004-5-10 12:24:03 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

搂住的:
if "%start%" == "n" goto :quit
if "%start%" == "y" goto begin
:quit 是不是有问题啊? 应该是 quit 吧?
回复

使用道具 举报

14#
发表于 2004-5-10 14:14:32 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由死性不改2004/05/10 11:49am 发表的内容:
这是我修改过的文件,有兴趣的不妨测试一下。
晕,刚才用做好的GHOST测试了一下,没想到出现了BOOT菜单,如何处理?
回复

使用道具 举报

15#
发表于 2004-5-10 14:16:06 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

唉,楼主提供的GHO我还没下载完,晕死
回复

使用道具 举报

16#
发表于 2004-5-10 14:33:51 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由mbcz2004/05/10 02:14pm 发表的内容:
晕,刚才用做好的GHOST测试了一下,没想到出现了BOOT菜单,如何处理?
怎么会呢?是你自己做的还是楼主的。
回复

使用道具 举报

17#
发表于 2004-5-10 15:05:20 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

有没有人已经下载了楼主的文件,希望把部分文件分离出来提供下载,现在我用BT下,几个小时了,动都不动一下。
回复

使用道具 举报

18#
发表于 2004-5-10 15:13:11 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

试一试!!!
回复

使用道具 举报

19#
发表于 2004-5-11 00:22:41 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由死性不改2004/05/10 02:33pm 发表的内容:
怎么会呢?是你自己做的还是楼主的。
是我用你的方法封装的。看你的意思,是不是要用楼主的那个GHOST?
回复

使用道具 举报

20#
发表于 2004-5-11 10:29:26 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

晕 干什么要弄这么复杂啊???
我做的GHOSTXP就没有用到过什么计算机类型检测
已经在很多计算机安装通过
品牌机有
联想 清华同方 方正
兼容机有
主板芯片是Intel865 845 815 810 各类主板 也完全通过
也全部实现软关机功能
不知道楼主为什么要用什么计算机类型检测呢??

回复

使用道具 举报

21#
发表于 2004-5-11 13:33:34 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由MHB2004/05/11 10:29am 发表的内容:
晕 干什么要弄这么复杂啊???
我做的GHOSTXP就没有用到过什么计算机类型检测
已经在很多计算机安装通过
品牌机有
...
我的也是,,,说起来很奇怪....我以前做过了一个ghost.就是按照删除全部驱动,再syssysprep.做好了ghost ,,,,,我就去测试,,,不行,说hat错误,,,所以我就拿了一别人一个万能的ghost里面的hal.dll复制到我的ghost,我再去测试....已经装过了超过300台机子,什么新旧的机子都有,全部能行,也不用检测.我到现在都不明白是什么回事,很奇怪的说,,,,还有,,,装过的机子,他会智能识别机子的类型,acpi的他会自动识别.uniprocessor的也会自动识别,我的这个ghost是恢复最快的,他ghost完了,重启,封装,一会就可以进入windows了,,很奇怪,呵呵~~~~~~~~~~~
回复

使用道具 举报

22#
 楼主| 发表于 2004-5-11 14:19:07 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由死性不改2004/05/10 10:03am 发表的内容:
1,请问bootsect.dat应该如何修改以达到精简加载虚拟软盘启动过程?
2,我认为不需要进行比较判断过程,只需要把Text Mode Setup过程产生的hal.dll和
ntoskrnl.exe复制到windows\system32目录就可以了,当然这样 ...
1.我没有改动bootsect.dat
2.你的建议很好,我已经认真思考过,我十分乐意采纳,但我最多只能帮你在我自己的电脑上实现它,因为我已经不打算发布下一版,除非在制作原理上有巨大改进或上一版有重大错误,否则我不会随便发布自己的作品。
下面引用由huage2k42004/05/10 12:24pm 发表的内容:
:quit 是不是有问题啊? 应该是 quit 吧?
没错,但应该说,理论上应该是quit
下面引用由MHB2004/05/11 10:29am 发表的内容:
晕 干什么要弄这么复杂啊???
我做的GHOSTXP就没有用到过什么计算机类型检测
已经在很多计算机安装通过
品牌机有
...
其实在以下三种类型的计算机上用Advanced Configuration and Power Interface [ACPI] PC都可以实现软关机,因为它们是兼容的,而且实际生活中,几乎所有计算机都是以下三种类型,所以你的运气才会那么好。
1.Advanced Configuration and Power Interface [ACPI] PC
2.ACPI Uniprocessor PC
3.ACPI Multiprocessor PC
可以解决实际问题的方法都是好方法。
下面引用由12312312312004/05/11 01:33pm 发表的内容:
我的也是,,,说起来很奇怪....我以前做过了一个ghost.就是按照删除全部驱动,再syssysprep.做好了ghost ,,,,,我就去测试,,,不行,说hat错误,,,所以我就拿了一别人一个万能的ghost里面的hal.dll复制到我的ghost,我再 ...
你的做法也是一种创新,虽然我不清楚你是怎么做到的,但既然事实已经站出来说话了,这也是一种成功的方法。
回复

使用道具 举报

23#
发表于 2004-5-11 14:22:44 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由死性不改2004/05/10 11:49am 发表的内容:
这是我修改过的文件,有兴趣的不妨测试一下。
试了,比楼主的那个更智能化,很爽,呵呵。快做个集成了的哈。
同时也要感谢楼主带给我们这么好的东东哦!
回复

使用道具 举报

24#
发表于 2004-5-11 16:43:20 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

to benjaminwan
其实是可以通用于2000/2003的,当用于2000/2003时,只需替换hal.dl_,
halacpi.dl_、、、ntoskrnl.ex_,ntkrnpmp.ex_这些为2000/2003的就可以了,
我已经测试过,检测过程不会发现这些文件是2000的还是XP的或者是2003的,
也就是说检测过程可以统一使用XP的Text Mode Setup。
回复

使用道具 举报

25#
发表于 2004-5-11 16:50:10 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由mbcz2004/05/11 02:22pm 发表的内容:
试了,比楼主的那个更智能化,很爽,呵呵。快做个集成了的哈。
同时也要感谢楼主带给我们这么好的东东哦!
你说错了,智能的只是Text Mode Setup阶段,我的批处理只是把过程中产生的hal.dll和
ntoskrnl.exe复制到c:\windows\system32目录,还有就是把它放在了cmdline执行而已。
回复

使用道具 举报

26#
发表于 2004-5-11 19:36:27 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

下面引用由死性不改2004/05/11 04:50pm 发表的内容:
你说错了,智能的只是Text Mode Setup阶段,我的批处理只是把过程中产生的hal.dll和
ntoskrnl.exe复制到c:\windows\system32目录,还有就是把它放在了cmdline执行而已。
呵呵,感觉快了一点,所以才有此一说。
不改,你说这个Text Mode Setup与全新安装识别计算机类型是不是一回事?
回复

使用道具 举报

27#
发表于 2004-5-11 23:01:08 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

高手就是高啊!支持!
回复

使用道具 举报

28#
发表于 2004-5-26 16:54:00 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

一句话:你们都是牛人
回复

使用道具 举报

29#
发表于 2004-5-27 13:13:47 | 只看该作者

[2]让你的Ghost XP更加自动化---计算机类型自动检测的实现

用上海市大政府版做万能克隆通行无阻,但用oem版做的就只在台式机上成功(用DMICFG改BIOS或只能改system的均可),在toshiba便携机(只能改BIOS里的system)上要重新激活,晕!谁能教我?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-11-17 23:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表