无忧启动论坛

标题: 关于“一个与众不同的 XP SP3 N合1 安装盘” [打印本页]

作者: 欲飞    时间: 2008-9-25 10:17
标题: 关于“一个与众不同的 XP SP3 N合1 安装盘”
看到quya的[7/27/2008更新]一个与众不同的 XP SP3 N合1 安装盘!可以说是眼前一亮,这正是我所需要的。看到有很多人不以为然,所以我站出来说几句:
      一是为什么要尽量用OEM而不用VOL的问题。前几年非常流行的“上海 g-o-v-e-r-n-m-e-n-t大客户版”就是力证,先是通不过微软下载站的正版验证,无法下载一些软件比如WMP10,继而是打开了自动更新的用户,出现了“盗版”提示。当然,可能有的人从来不去微软下载什么东西,也不会打开自动更新,装一次系统一直用到崩溃,如果你是这样用电脑,那什么版本都无所谓了,装得上激得活就行了,最早的俄罗斯版足矣。虽说VOL版就是一个ProductKey的问题,一个换号脚本就可以解决正版验证和盗版提示的问题,但说不定那天,新换上去的KEY又会被封,又要去找KEY来换。每个通过正版验证的VLK微软肯定是有记录的,同一个VLK用的人多了,迟早是要被封的,封到最后,拿到VLK的人不敢泄漏出来,大家就没VLK可用了。而OEM版就不会有这些问题了,且不说微软会不会封现有OEM的KEY,如果封了,起码也得给现有的OEM用户一个交待,也许是一个更新,也是一个KEY,不管那种形式,正式的OEM用户一定不会受到封杀,这时侯要从众多的OEM机器上提几个文件,一个KEY应该不是难事。所以,封OEM版是没有意义的,也就是说OEM版是几乎不可能被封的。这也许就是OEM版受欢迎的主要原因。
      二是为什么要弄OEM的N合一。有些人是在兼容机上刷BIOS来用OEM版,而且只是自己用。这样的话,一个OEM版就够了,选一个感觉爽品牌的来刷,光盘再用对应的OEM版一个版本就行了。更何况现在改写DMI的技术,可以把一台兼容机改成能适应若干种品牌的OEM版,随便选一个OEM版的都行。但如果你是经常给别人装机,那N合一还是很有必要,如果客户是兼容机,你想怎么刷都行,但如果客户机本身就是品牌机,而且那种品牌本身也有OEM版的XP,如果你手里只有一两种OEM版,没有那种品牌的OEM版XP,难不成也要把客户机的BIOS给刷了吗?所以说,N合一是有必要的,并且在光盘装得下的情况下N自然是越大越好了。
      三是为什么quya的方法(思路)好。前面已经说了,OEM N合一是很有必要的,那剩下的就是OEM N合一怎么得到的问题,网上一搜,很多,随便下载一个,刻盘,OK。但是这样的系统盘,用起来放心吗?前几天看到报道,番茄花园通过在整合光盘里捆绑软件,一个月是十几万的收入,这个我以前并不知道,但是也从来没有用过,因为来源不明的东西,用起来始终不放心,因为不放心、不用,所以也没有去管花园里面到底捆绑着什么了。总之,自己做的才放心啊,操作系统我是做不出来了,要不然,微软的我也不用,谁知道微软在里面又有没有放一些我们所不知道的东西呢?操作系统我是做不出来,但是集成还免强能自己做,所以如果自己集成,出了问题起码也能知道到底是那方面出了问题。自己集成的话,问题又来了,没有做过N合一的人可能不清楚,要做N合一,还是要修改不少东西:光盘引导扇区文件、SETUPLDR.BIN、TXTSETUP.SIF还要建好启动盘组文件夹等等等等。如果这些东西弄一次就能一劳永逸就好了,前几天试着自己集成SP3的OEM N合一时就发现,启动盘组文件不能用原来SP2的了,SETUPLDR.BIN也变化了,不能再用原来SP2下改好的那个了。TXTSETUP.SIF就更不用说了,都得一个一个重新修改,很是麻烦。如果用quya的方法,下载一个RTL的安装盘,目录结构都不用变,SETUPLDR.BIN、TXTSETUP.SIF不用改、启动盘组文件夹也不用建,增加几个文件、准备好OEM版的四个文件就行了,以后集成补丁或Serverpack也很方便。
作者: 欲飞    时间: 2008-9-25 11:46
前面说了支持quya的[7/27/2008更新]一个与众不同的 XP SP3 N合1 安装盘!的一些理由,quya说将在一两个星期之内公布其方法,可是现在还没有公布。由于我看到quya的贴子较晚,用纳米机器人下载实在太慢,到现在还没有下完一个。汗。所以只是试着分析,呵呵。结合xinso的
[转贴]自己制作 SPx N合1 自动安装盘(x86)(由于没有远景的邀请码,没有在远景注册,所以只能通过看转贴学习),这种方法基本思路还是比较简单的,就是在安装完成系统第一次启动之前替换掉OEMBIOS的四个文件。
      思路是简单,但是实现的话还是要动些脑筋,首先是用那一个品牌的文件来换,如果是以前的N合一的方法,那是在制作光盘前就替换好,开始安装之前通过菜单选择安装那一个替换好的版本就行了。如果要在安装好之后自动替换首先就得识别主板BIOS所支持的版本。quya用的是OEMSCAN(2006年的贴子,汗);xinso用的是MEMSAVE(源出处没有找到,但刷BIOS激活OEM版验证工具就是就的它)。xinso的方法相当于就是自己到BIOS中去找特征字符串,灵活,增加特征字符串很方便,但根据“BIOS激活OEM版验证工具”作者的说明,MEMSAVE在2003下不能用,而且用find/findstr去找特征串相当于是在整个BIOS中去找,效率不是那么高。而用OEMSCAN就可以指定搜索的范围,效率应该高得多。但是用OEMSCAN的话找到了特征字符串就会到指定的地点去拷文件还会校验OEMBIOS.CAT的CRC32码(多余),那样就不能用压缩的OEMBIOS文件、也不能用xinso的imageX的方法了灵活性大打折扣。当然我们也可以改一下,只利用OEMSCAN检索返回的特征串结合批处理指令(就像xinso用的那样)也可以不让OEMSCAN自动去拷文件,而像xinso那样去处理的,这样就灵活多了,当然写这样一个批处理恐怕得稍稍动点脑筋。
      其次是自动识别程序以及替换文件用的批处理程序如何在安装时放到硬盘上运行的问题。quya用的是OEMInster方法,这样就行了,反正目的就是在安装完成第一次启动之前能在硬盘上指定位置找到它们,以后删掉它们都没关系的,只要能拷到硬盘上就行。而xinso用的是整合驱动程序的方法,而且是手工整合的方法,要修改TXTSETUP.INF、DOSNET.INF还要把文件放在I386下,安装过程中的文本模式过程中还会被拷到硬盘一临时目录,最后拷到system32\1025下,太没必要了。
      第三恐怕还是ProductKEY的问题。集成多个OEM版,每个OEM的ProductKEY是不一样的,文件换了,KEY不换,激活都激活不了。xingso用的是修改注册表的方法。修改注册表替换KEY我从来没有用过,不过,CD-KEY好找,网上一搜便是,可这么多OEM版的注册表键值怎么找啊!所以即便要一个版本一个KEY,那也应该用换号脚本来做,xingso是不是担心VBS脚本不能在系统安装完第一次重启之前运行呢,这个应该不会是问题吧,系统都安装完了,VBS应该是可能运行的(没有测试)。quya没有提到这个问题,但是按照网上的说法保证100%成功制作OEM的SP3系统安装盘!(本人经三天,制作18个虚拟机测试)(不晓得是不是原贴)激活以及KEY只跟dpcdll.dll和setuppp.ini有关那这样一个KEY通吃所有OEM版是不成问题的嘛,连换号脚本都不用了。不知quya是不是用这种方法,quya的盘我还没有下载完,下完了我看,如果通用KEY可以的话我就用通用KEY了(不过,如果KEY可以通用,那么这么多个OEM版区别在哪里呢?),不行的话就用VBS换号应该是可以的。

[ 本帖最后由 欲飞 于 2008-9-25 12:08 编辑 ]
作者: barton    时间: 2008-9-25 12:08
不错,继续。。。

。。。
作者: 欲飞    时间: 2008-9-25 14:16
好了,那破机器人终于下载完了,看了一下,quya的实际做法跟我推测的差不多。(也不是瞎推了,从各位的贴子和回贴中看出来的)但是quya提供下载的镜像里,个性化的东西还是不少,比蕃茄什么的少多了,但是还是多。在那个install.cmd里面改计算机名、用HOST屏蔽一些网站等等,没什么意思。还有什么“五星老土”一看就是easyboot的启动文件夹,这也改!本来就是做集成,拿来主义嘛,拿来可以,但不要拿来后还写上自己的名字嘛。OEM.EXE不知道是不是quya的原创了,搞这个东西还要故意设计成只能在NTFS下运行,是瞧不起FAT了还是故弄玄虚,我实在看不出FAT对OEM.EXE的功能有什么限制,反正我是不会用它的了。对于特征码及其地址范围的研究和修改倒是很有意义,而我是没有时间去研究那么细的东西了,毫无疑问,抄定了!我看“BIOS激活OEM版检证工具”那么流行,特征码及其地址范围那他的,应该没问题吧。
     好了,评价完毕。下一步自己实现。如果对这项技术感兴趣的比较多,quya又迟迟不公布制作方法的,我改日再把我的做法贴出来。(这贴沉了就不发了,因为大家不感兴趣嘛。)
作者: hdxing    时间: 2008-9-25 15:52
提示: 作者被禁止或删除 内容自动屏蔽
作者: tegl    时间: 2008-9-25 19:02
原帖由 欲飞 于 2008-9-25 14:16 发表
quya又迟迟不公布制作方法的,我改日再把我的做法贴出来。


期待发布制作方法,赞~
作者: 七仙花    时间: 2008-9-25 19:39
期待方法发布,在这学习了。
作者: quya    时间: 2008-9-25 21:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: lc1212    时间: 2008-9-26 07:56
quya能否提供下MD5值。
A. 无菜单,无IE7/WMP10/WMP11, 自带Vol版,IBM,DELL, HP, COMPAQ, HP Pavilion, Asus, Lenovo, Acer OEM版
http://www.namipan.com/d/a5f5d45 ... 63bb6be553500188d2b
作者: bartonking    时间: 2008-9-26 13:38
支持楼主欲飞 ,希望你早日提供成品下载。另外quya提供的OEM信息希望删掉,向我就是这中懒人,搞不定哦。。。希望楼主删除个性化的东西,早日提供!谢谢!另外,这区下XP的人可能不多,估计顶的人也不多,
作者: ayyllll    时间: 2008-9-26 18:25
也没什么好破解的,本来肯去钻研的人就不多,再让人去破解,又不公布方法,更没人研究的。
作者: 星语风    时间: 2008-9-26 19:19
我研究了好长时间,但是在T13替换的时候就是不成功,后来不得已放弃了
作者: quya    时间: 2008-9-26 19:37
提示: 作者被禁止或删除 内容自动屏蔽
作者: 星语风    时间: 2008-9-27 07:57
如果能把你的oemfile.exe文件以及未加密前的批处理公开供参考一下,那就可以少伤很多脑筋了
作者: 欲飞    时间: 2008-10-8 09:31
原帖由 星语风 于 2008-9-27 07:57 发表
如果能把你的oemfile.exe文件以及未加密前的批处理公开供参考一下,那就可以少伤很多脑筋了

quya盘里面的oemfile.exe是可以用WINRAR解压的。
作者: 欲飞    时间: 2008-10-8 11:31
还是说一下具体制作方法吧,虽然感兴趣的人不是很多,但说过quya不发布我就发布的,不能言而无信啊。成品下载不是我舍不得,而是找不到也不想去网络上找那么大的空间。再说了,授人以鱼不如授人以渔。何况这种N合一本来就是根据自已需要来制作,哪里有什么一劳永逸的事。
      具体制作的原理其实就是xinso方法[转贴]自己制作 SPx N合1 自动安装盘(x86)的改进,简直就是quya的方法[7/27/2008更新]一个与众不同的 XP SP3 N合1 安装盘!但由于quya没有把具体方法贴出来,而其提供的盘中关键的步骤是写成了EXE文件的形式,虽说那个EXE文件估计是用BAT2EXE之类做的,但我也懒得去分析了,反正只要能实现就行了!但是不知道我写的BAT是不是跟quya的EXE处理的方法步骤一致,所以我只能说“简直就是quya的方法”。下面开始具体步骤。
      一.需要的工具
       1. Windows XP VOL版光盘(源版、集成SP2的、集成SP3的、集成各补丁的都可以,就是不能用GHOST版的)
       2.准备集成的各OEM版的oembios.bin、oembios.dat、oembios.sig、oembios.cat四个文件
       3.OEMSCAN.EXE(去http://www.msfn.org/board/OEMScan-Automated-Multi-t82638.html下载吧,顺便也可以学习一下。那里面还有一个链接http://www.oembios.net可以下载到各个OEM版的四个文件,当然,quya的贴子里已经把下载各个版本四个文件的链接都整理好了)
       4.OEM版CD-KEY的注册表文件。把下面文本另存为OEMPID.REG(随便从装好OEM版且已激活的机器导下面的键值出来也行)
         Windows Registry Editor Version 5.00
         [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion]
          "ProductId"="55661-OEM-0011964-47775"
         [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]
         "ProductId"="55661-OEM-0011964-47775"
         "DigitalProductId"=hex:a4,00,00,00,03,00,00,00,35,35,36,36,31,2d,4f,45,4d,2d,\
          30,30,31,31,39,36,34,2d,34,37,37,37,35,00,2d,00,00,00,41,32,32,2d,30,30,30,\
          30,31,00,00,00,00,00,00,00,3e,5c,43,0e,f2,25,4c,6e,07,bd,af,e0,91,6f,05,00,\
          00,00,00,00,3d,1f,f1,40,99,a3,02,00,02,00,00,00,00,00,00,00,00,00,00,00,00,\
          00,00,00,00,00,00,00,00,00,00,00,34,33,34,30,30,00,00,00,00,00,00,00,96,16,\
          00,00,c2,b7,1a,38,00,01,00,00,8c,01,00,00,00,00,00,00,00,00,00,00,00,00,00,\
          00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,50,91,fe,62
          [HKEY_LOCAL_MACHINE\SYSTEM\Setup\Pid]
          "Pid"="55661OEM"
       5.制作光盘镜像的工具OSCDIMG、CDIMAGE、UltraISO等什么都行。
       二.制作
        1.建一个工作文件夹,比方说X:\WINXP,把VOL版光盘下的文件都拷进去;
        2.在X:\WINXP下建一个文件夹,比方说OEM,把OEMSCAN解压到里面去,然后根据准备整合的OEM版本修改OEMSCAN.INI文件,然后将各版本的四个文件拷贝到对应的文件夹。
       准备好的OEMSCAN文件夹像下面这个样子:
       OEMSCAN
         ├OEMSCAN.EXE
         ├OEMSCAN.INI
         ├FOUNDER
         │├OEMBIOS.BIN
         │├OEMBIOS.CAT
         │├OEMBIOS.DAT
         │└OEMBIOS.SIG
         ├HP
         │├OEMBIOS.BIN
         │├OEMBIOS.CAT
         │├OEMBIOS.DAT
         │└OEMBIOS.SIG
         ├IBM
         │├OEMBIOS.BIN
         │├OEMBIOS.CAT
         │├OEMBIOS.DAT
         │└OEMBIOS.SIG
         ├LENOVO
         │├OEMBIOS.BIN
         │├OEMBIOS.CAT
         │├OEMBIOS.DAT
         │└OEMBIOS.SIG
         └THTF
           ├OEMBIOS.BIN
           ├OEMBIOS.CAT
           ├OEMBIOS.DAT
           └OEMBIOS.SIG
         OEMSCAN.INI的内容像下面这个样子:
          ;  OEMScan v1.4.1 by Jeremy (xehqter)
         [Founder PC]
         PATH=".\FOUNDER\"
         [Hewlett]
         PATH=".\HP\"
         [Hewlett-Packard]
         PATH=".\HP\"
         [HP PAVILION]
         PATH=".\HP\"
         [IBM CORPORATION]
         PATH=".\IBM\"
         [LEGEND Dragon]
         PATH=".\LENOVO\"
         [LENOVO]
         PATH=".\LENOVO\"
         [TSINGHUA TONGFANG COMPUTER]
         PATH=".\THTF\"
     3.在X:\WINXP\OEM下建一个文件夹OEMPID把零售版的两个跟CD-KEY相关的两个文件DPCDLL.DLL和PIDGEN.DLL拷进去,用任一OEM
版的也行,是一样的。(因为OEM版跟VOL版一共有6个文件不同,而OEMSCAN只解决了四个OEM版文件,所以这里还要准备另外两个。)
     4.准备$OEM$文件夹,在$OEM$文件夹下新建或修改CMDLINES.TXT文件。CMDLINES.TXT文件中[COMMANDS]下的每一行代表一个自动运行的命令。假如准备安装完成后自动替换文件的批处理文件名为INSTALLS.CMD,那么CMDLINES.TXT中[COMMANDS]节下应该包含
".\INSTALLS.CMD"这样一行。
     5.准备自动安装批处理文件INSTALLS.CMD,并把这个批处理文件保存在$OEM$文件夹下。
       INSTALLS.CMD文件内容如下:
       REM @ECHO OFF
       SET CDTAGFILE=\WIN51IP
       FOR %%i IN (c d e f g h i j k l m n o p q r s t u v w x y z) DO IF EXIST "%%i:%CDTAGFILE%" SET CDROM=%%i:
       %CDROM%
       CD\OEM
       Start/Wait OEMSCAN\OEMSCAN.EXE
       IF ERRORLEVEL=1 GOTO OEM
       GOTO END
       :OEM
       REM 复制RTL版的两个文件到系统目录
       COPY /Y OEMPID\PIDGEN.DLL %SystemRoot%\SYSTEM32
       COPY /Y OEMPID\PIDGEN.DLL %SystemRoot%\SYSTEM32\DLLCACHE
       COPY /Y OEMPID\DPCDLL.DLL %SystemRoot%\SYSTEM32
       COPY /Y OEMPID\DPCDLL.DLL %SystemRoot%\SYSTEM32\DLLCACHE
       REM 导入注册表实现换号
       REG IMPORT OEM.REG
       :END
     6.修改I386下的WINNT.SIF文件,在其中的[Unattended]节下增加或修改这一行OemPreinstall="Yes",这样才能在安装时将$OEM$文件夹下对应的文件拷贝到硬盘上,并自动执行在CMDLINES.TXT文件中指定的命令。这里没有说到如何拷贝OEM信息文件,那些是多余的,但由于要自动运行程序,所以OemPreinstall一定要改为YES。切记。
     7.制作镜像
        把整个X:\WINXP制作成一个光盘镜像就行了,记得加上引导扇区文件。这个我就不废话了。
      这样,在安装完成最后剩大约13分钟时,就会自动运行INSTALLS.CMD文件,这个批处理首先是查找光盘,就用XP安装光盘上的标志文件WIN51IP为标志,根目录下有这个文件的就是XP的安装光盘了!然后就将当前目录切换到光盘下的OEM目录运行。先运行OEMSCAN,OEMSCAN会搜索BIOS查找OEM厂商标识,找到以后就自动用对应的4个OEM文件把已安装到硬盘上的4个文件换了,然后INSTALLS.CMD再根据OEMSCAN的返回值决定是否替换另两个文件,如果OEMSCAN的返回值是1表示OEMSCAN已经找到厂商标识并替换成功,那就要接着把另两个文件也换了,并把CD-KEY也换了。否则的话就直接退出,等于什么都没做,那么安装好的就是VOL版了。
      OK。关键步骤就是这些了,我已经在LENOVO上试过了,完全可以。其他品牌还没有机会试,如果有问题,那就是OEMSCAN.INI中OEM厂商标志字符串的问题了,那个要大量的真机测试才能做得完美,我感兴趣的只是技术&原理,不想去做那么多测试,这方面quya掌握的资料和研究成果似乎很多。大家可以去他的贴子里看,或者在网上搜一下,这方面的资料还是不少的。
      如果有人在用这种方法制作N合一OEM版安装光盘时有任何疑问,可以提出来,发消息发E-mail都行,我们共同研究。
      补充一下,我还是把上面一些要自己动手准备的一些文件以即目录结构压缩一下作为附件放上来吧,由于附件大小问题,其他该自己去找的还得自己去找。
      附件已更新!(上次传的不小心把两行合在一起了,呵呵)

[ 本帖最后由 欲飞 于 2008-10-9 09:45 编辑 ]

OEM_NIN1.rar

20.75 KB, 下载次数: 295, 下载积分: 无忧币 -2


作者: 星语风    时间: 2008-10-8 13:21
看上去,和我的办法没什么两样,可是我的办法在替换 pidgen.dll 的时候,就是不成功
不知这个办法会怎么样,有空再试试看
作者: lwz    时间: 2008-10-8 13:43
标题: 回复 #16 欲飞 的帖子
很好
自己本来想制作pe xp3合盘,但看见此帖停住了。
自己很菜,只有xp3光盘镜像,麻烦楼主把所需剩余的文件发送到ftp
这也可能是大多数人的想法,毕竟大多数人很懒
作者: cq-bbcyb    时间: 2008-10-8 18:27
原帖由 星语风 于 2008-10-8 13:21 发表
看上去,和我的办法没什么两样,可是我的办法在替换 pidgen.dll 的时候,就是不成功
不知这个办法会怎么样,有空再试试看



[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"SFCSetting"=dword:ffffff9d
"SFCDisable"=dword:ffffff9d
作者: 欲飞    时间: 2008-10-8 23:14
原帖由 cq-bbcyb 于 2008-10-8 18:27 发表



[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"SFCSetting"=dword:ffffff9d
"SFCDisable"=dword:ffffff9d

这是关闭文件保护的注册表设置吧。但是我用系统策略关闭后,查看对应的键值却不是这个,不知道是从哪里传出来的方法,也不知道到底对不对了。
作者: 欲飞    时间: 2008-10-8 23:15
原帖由 星语风 于 2008-10-8 13:21 发表
看上去,和我的办法没什么两样,可是我的办法在替换 pidgen.dll 的时候,就是不成功
不知这个办法会怎么样,有空再试试看

替换pidgen.dll不成功应该跟文件保护无关,文件保护是怎么回事我也不太清楚,但是我直接在正常模式下拷文件过去换都不会出现文件保护提示的。(我用的系统要么是用源版盘装的,要么是用自己整合的盘装的,总之,不会无意中关掉文件保护的。)再说了,系统文件保护无非是用DLLCACHE里面的换回来,把DLLCACHE下的文件也换了,随它怎么保护都是白搭。所以应该不会是文件保护的问题。
正在使用的文件是不能替换的,而pidgen.dll会在什么时候使用呢?应该是在激活或者检测是否激活的时候吧,如果系统是已经激活了的,那么检测应该很快就会过去,而如果没有激活呢?它是不是时不时要再次检测一下,一方面是重试,一方面好冒出个泡来提醒激活呀。所以我估计,替换pidgen.dll不成功,可能是你原来用的6个文件以及KEY不匹配。朝这个方向再检查一下罢。
作者: 欲飞    时间: 2008-10-8 23:19
原帖由 lwz 于 2008-10-8 13:43 发表
很好
自己本来想制作pe xp3合盘,但看见此帖停住了。
自己很菜,只有xp3光盘镜像,麻烦楼主把所需剩余的文件发送到ftp
这也可能是大多数人的想法,毕竟大多数人很懒

有了XP3光盘镜像,加上我上传的附件,就剩各个OEM的4个文件了啊,下载的地方也告诉你了,自己去下,想下哪个下哪个,那样不更好?
作者: 星语风    时间: 2008-10-9 08:09
按照你的办法,我用MSDN 601M XP SP3 VOL版来制作,还是在替换PIDGEN.DLL的时候失败
测试环境:VM 5.0,修改BIOS为HP SLP

终于,我放弃了,不做了,还是按照传统的办法做N合1吧,反正也只是玩玩
作者: quya    时间: 2008-10-9 08:28
提示: 作者被禁止或删除 内容自动屏蔽
作者: ttt0001    时间: 2008-10-9 09:17
明白了,不知道能不能成功?有空也去试一下!谢谢楼主分享!
作者: ttt0001    时间: 2008-10-9 09:19
原帖由 星语风 于 2008-10-9 08:09 发表
按照你的办法,我用MSDN 601M XP SP3 VOL版来制作,还是在替换PIDGEN.DLL的时候失败
测试环境:VM 5.0,修改BIOS为HP SLP

终于,我放弃了,不做了,还是按照传统的办法做N合1吧,反正也只是玩玩



在VM中 HP好象改不了BIOS的,你换下LENOVO的试试看行不行?
作者: lyra    时间: 2008-10-9 09:22
原帖由 quya 于 2008-10-9 08:28 发表


那么用我做的会失败吗? 看来看去你们的办法和我的从本质上来说没有什么两样, 我简直怀疑我做的也是失败的. 能确认下吗? 谢谢了.


兄弟,你的制作方法涅?能不能公布一下。我也想做一个适合自己的来用。
作者: 欲飞    时间: 2008-10-9 09:33
原帖由 星语风 于 2008-10-9 08:09 发表
按照你的办法,我用MSDN 601M XP SP3 VOL版来制作,还是在替换PIDGEN.DLL的时候失败
测试环境:VM 5.0,修改BIOS为HP SLP

终于,我放弃了,不做了,还是按照传统的办法做N合1吧,反正也只是玩玩

不好意思,上传的文件中INSTALLS.CMD有一行有问题(两行连在一起了)。把它分开一下,就是IF 这一行。
这一行是这样的Start/Wait OEMSCAN\OEMSCAN.EXE IF ERRORLEVEL=1 GOTO OEM,写连在一起的话,IF语句判断的返回值就不是OEMSCAN返回的了,而是上一行语句返回的,上一行语句是CD语句,自然是成功的了,返回就是0。这样的话,就不会运行下面的语句替换PIDGEN.DLL和DCPDLL.DLL这两个文件。
不过,这是根本没有替换PIDGEN.DLL啊,而不是替换PIDGEN.DLL失败,还是不太清楚你替换PIDGEN.DLL失败的具体情况。

[ 本帖最后由 欲飞 于 2008-10-9 09:53 编辑 ]
作者: 欲飞    时间: 2008-10-9 09:41
原帖由 quya 于 2008-10-9 08:28 发表


那么用我做的会失败吗? 看来看去你们的办法和我的从本质上来说没有什么两样, 我简直怀疑我做的也是失败的. 能确认下吗? 谢谢了.

所以我说:“简直就是quya的方法”
作者: ttt0001    时间: 2008-10-9 09:48
找到一个新版 的:
http://integrator.siginetsoftware.com/index.php?addons&id=166
Addons
Expand all  Collapse all
Pre-Activation / OEMScan BareBones (For Testing Purposes Only)
Category: Pre-Activation
Creator: Siginet
Language:  
Compatability: Windows XP
Windows 2003

MD5 checksum: 740bbb86a76c07e8a3ea7912413cd770
Downloads: 1427
Posted: 01-23-2008 by Siginet

This is a Barbones Skeleton of my new OEMScan v1.7 addons.

They are only in the testing stages right now. They are not reccommended for use by people that do not understand how to use them.
作者: lwz    时间: 2008-10-9 09:53
原帖由 欲飞 于 2008-10-9 09:41 发表

所以我说:“简直就是quya的方法”

看了quya的简介
下载了quya的盘,现在那4个OEM文件有了,听说quya的方法适合oem文件放在U盘,感觉这个功能挺实用、挺新颖的,不知quya能不能把你的oemfile.exe中oem.exe解密呀,最好能变为批处理,不需要ntfs分区运行,方便我等菜鸟YY
另外,我想把系统安装好后,根据电脑主板品牌,手工复制OEM文件导入注册表,实现由VOL版变为OEM版,不知这个方案可行否
作者: 欲飞    时间: 2008-10-9 11:05
原帖由 ttt0001 于 2008-10-9 09:48 发表
找到一个新版 的:
http://integrator.siginetsoftware.com/index.php?addons&id=166
Addons
Expand all  Collapse all
Pre-Activation / OEMScan BareBones (For Testing Purposes Only)
Category: Pre- ...

这不是什么新东西,新瓶装旧酒,里面的OEMSCAN还是1.4.1版的没变。这里把它包装成了整合包的形式,那么就等于是xinso的方法了,只不过,弄成整合包的方式,制作起来容易得多。但是,下载下来的只带了hp和compaq两个OEM版的LOGO,还不带那4个文件,怎么用还不太清楚,大概要用那网站上的整合工具和其他插件吧,这么一来,倒麻烦了。算了,我还是用自己的方法吧,满天的的鸟语,累人。
作者: 欲飞    时间: 2008-10-9 11:27
原帖由 lwz 于 2008-10-9 09:53 发表

看了quya的简介
下载了quya的盘,现在那4个OEM文件有了,听说quya的方法适合oem文件放在U盘,感觉这个功能挺实用、挺新颖的,不知quya能不能把你的oemfile.exe中oem.exe解密呀,最好能变为批处理,不需要ntf ...

      我也下载了quya的盘,但是就是看不出是怎么直接oem文件放在U盘里的。在安装到最后剩13分钟时,U盘还不能用吧!?
      如果是安装好之后再换,肯定是没问题的,我测试批处理时就是直接在真机上试的,完全可以。那时候换的话,把4个文件放在U盘也是完全没有问题的。看到判断光盘盘符的FOR语句了吧,找U盘盘符也是一样道理。只不过,我在测试的时候,OEMSCAN有时候正常,有时候出错提示不能访问受保护的内存,所以我才决定把替换的时间提前一点,放在OEMINSTALL时,如果没有受保护内存的问题,那就放在runonce这里好了,那样还能支持把4个文件放在U盘上。
      如果是安装好之后,手工选择一个来换,那连OEMSCAN都可以不用了。一个批处理直接搞定。其实这样这也挺好的啊,我为什么要搞成自动的呢?难道仅仅是为了公开quya不公开的方法吗?呵呵,大家投下票如何,那个更方便一些。
作者: haonan    时间: 2008-10-9 15:30
原帖由 quya 于 2008-10-9 08:28 发表


那么用我做的会失败吗? 看来看去你们的办法和我的从本质上来说没有什么两样, 我简直怀疑我做的也是失败的. 能确认下吗? 谢谢了.

我前后装了两次你的那个,在vm里似乎不行,直接装的vol版,在真机上,修改的华硕,oem文件放到硬盘某分区根目录了,成功。
有个问题,那4个oem文件必须要解压出来的,也就是*.bin这种还是*.bi_这种也行,上次测试我是解压出来的,最近没时间也就没测试压缩格式了。
作者: quya    时间: 2008-10-9 18:45
提示: 作者被禁止或删除 内容自动屏蔽
作者: lwz    时间: 2008-10-9 19:06
原帖由 quya 于 2008-10-9 18:45 发表
大量的测试耗费了我很多时间, 虽说没什么技术含量, 但关注的人中间有的对我表示质疑, 有的只想知道原理,这令我多少有点心寒, 这也是我不愿公布所有步骤的原因。请大家原谅。
其实这个文件在安装完毕之后也可以运行的,而且检测到什么版本,是否缺少文件都有提示,只是被我屏蔽了。

非常感谢quya
每一件作品,都凝聚了作者的心血,大家都会理解
有人质疑,也属正常现象,望quya谅解
我认为讲解一下安装完毕后怎么运行,并且能看到提示信息,那应该更好了
如果方便当然希望公布所有步骤

作者: 星语风    时间: 2008-10-9 19:56
看到你的批处理,明白了
expand %OEMDIR%\oembios.ca_ %OEMDIR%\oembios.cat 1>nul    颜色无法显示,这是蓝色部分

原来你把oembios.cat 放在system32目录下了,而不是放在system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\目录下

而OEMSCAN等换BIOS的四个文件的时候,也是把oembios.cat 放在 system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\目录下的


按你的办法,pidgen.dll还是没替换成功的,(在替换命令后加入pause就可以看到是否替换成功了),不过没关系,因为相应的在 system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\oembios.cat 也是原来 VOL版本的,与没替换成功的 pidgen.dll 刚好相对应

虽然按你的办法,在我的电脑中显示为OEM,但我不认为是真正的OEM版,因为关键的 oembios.cat没替换成功

[ 本帖最后由 星语风 于 2008-10-9 20:58 编辑 ]
作者: 欲飞    时间: 2008-10-9 22:09
原帖由 星语风 于 2008-10-9 19:56 发表
看到你的批处理,明白了
expand %OEMDIR%\oembios.ca_ %OEMDIR%\oembios.cat 1>nul    颜色无法显示,这是蓝色部分

原来你把oembios.cat 放在system32目录下了,而不是放在system32\CatRoot\{F750E6C3-38EE ...

这一句只是解压缩而已,拷贝到系统里面还是由OEMSCAN来执行的,最后还是放到system32\CatRoot\{F750E6C3……下的啊。quya考虑得真周全,居然连压缩不压缩都通吃,呵呵。我本来也想用压缩格式的,但是用OEMSCAN的话,就得像quya那样,在硬盘上建临时目录,解压,还要动态修改OEMSCAN.INI……这部份代码quya也贴出来了,值得学习。如果用MEMSAVE话倒不麻烦,直接解压到目地文件夹就行了。但就在解压那4个文件的时候,我发现4个文件中最大的那个OEMBIOS.BIN解压缩后增大了-1%,也就是说解了还要小些,OEMBIOS.DAT也是这样,解压了还要小些,总体上来说,压不压差不多。那何必要用压缩的呢,制作的时候该解的解好就是了。
作者: 欲飞    时间: 2008-10-9 22:26
原帖由 星语风 于 2008-10-9 19:56 发表
按你的办法,pidgen.dll还是没替换成功的,(在替换命令后加入pause就可以看到是否替换成功了),不过没关系,因为相应的在 system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\oembios.cat 也是原来 VOL版本的,与没替换成功的 pidgen.dll 刚好相对应

虽然按你的办法,在我的电脑中显示为OEM,但我不认为是真正的OEM版,因为关键的 oembios.cat没替换成功

你没有为了测试我们弄的这些刻N张盘,装N次系统吧!那样罪过就大了。我写的INSTALLS.CMD是可以直接在装好的系统下运行的。在装好的系统下直接运行就可以测试了(记得把我第一次上传的那个错误改了,不然肯定是成功不了的)。oembios.cat没替换成功,那样的话系统是激活的吗?运行oobe/msoobe /a看过没?oembios.cat这个是安全编目文件,如果这个没替换成功,跟其他3个不配套,恐怕连系统都进不去哦。
作者: ayyllll    时间: 2008-10-9 22:35
标题: 回复 #38 欲飞 的帖子
看了楼主在16楼贴子,把方法全公布了,好样的.      不像那个oemfile.exe限定为NTFS格式

一是支持XPPE 硬盘安装吗?OEMSCAN全在光盘的OEM文件夹里,如果放在$OEM$
里的$1文件夹里,这样就支持XPPE 硬盘安装了。

二、如果能支持扩展到硬盘\U盘,这种就支持更多的OEM版本
作者: ayyllll    时间: 2008-10-9 22:39
而那INSTALL.BAT,实际上也可以修改一下, 一是用户自己选择, 二是让安装程序自动检测BIOS,然后安装..

可以借帮杨海军的安装管理器
作者: 欲飞    时间: 2008-10-10 09:15
原帖由 ayyllll 于 2008-10-9 22:35 发表
看了楼主在16楼贴子,把方法全公布了,好样的.      不像那个oemfile.exe限定为NTFS格式

一是支持XPPE 硬盘安装吗?OEMSCAN全在光盘的OEM文件夹里,如果放在$OEM$
里的$1文件夹里,这样就支持XPPE 硬盘安装 ...

      如果把OEMSCAN放在$OEM$文件夹里,那安装的时候会全拷到硬盘上去,而一台机器只需要4个OEM文件,所以我有没有把OEMSCAN放在$OEM$目录下。
      现在我用nlite 1.4.9.1制作的SP3+最新补丁的系统,nlite搞的DOSNET.INF这个文件可能还是有些缺陷,从硬盘上安装会提示少很多文件,刻成盘装就没有问题。我又懒得去修补DOSNET.INF,所以,我就没有考虑直持从硬盘安装。其实,把WINIP、INSTALLS.CMD和OEM文件夹拷贝到U盘上,安装好后再运行INSTALLS.CMD也是可以替换成功的。从这个意义上来讲,这种方案也是支持U盘的。
      但是要搞成光盘/U盘甚至加上硬盘通吃,这就要复杂得多了,当然基本原理是不变的,我在第2楼已经把基本原理都讲完了。至于值不值得去花费精力搞得更完善,那就看各位的了。我觉得没必要包含太多的OEM版本,有最流行5、6个就行了,偶尔遇到个别特殊的就手工换一换,所以我就没去想扩展到U盘上的问题,更没有考虑从硬盘上装的问题(从硬盘上装的话,安装文件都拷贝到硬盘上去了,不会在这时就先换好啊!当然,可以考虑写一个批处理,把OEMSCAN搜索到的版本的4个文件压到指定的I386下去。)
      总之,我认为是没有必要那么完善,有兴趣完善的,在已经公布的方法(无他,唯OEMSCAN耳!)上改进,应该不是太难。呵呵。
作者: 欲飞    时间: 2008-10-10 09:24
原帖由 quya 于 2008-10-9 18:45 发表
举个简单例子, 楼主提到的判断光盘盘符的问题,他的办法在大多数情况下没有问题, 但在双光驱的情况下, 并且有个光驱没有盘的情况下会出错。

你测试过没有?!我用虚拟光盘虚拟出Z盘,机子上两个物理光驱都不放盘,FOR ……这个语句都不会出错!!
要说问题呢,应该说是有两个光盘都都有XP的安装盘时,FOR这个语句肯定只找到后面一个,不过,谁没事同时放两张安装盘在两个光驱里面干嘛?如果这样搞事,微软的原版盘也要找错,不信你试试。
作者: haonan    时间: 2008-10-10 10:00
原帖由 quya 于 2008-10-9 18:45 发表
关于众多网友的疑问, 我尽量答复如下:

1. 星语风的2个文件替换不成功的疑问, 我贴出部分代码如下, 基本原理是一样的。注意红色部分, 就这么简单,和你们没什么区别。
:TRNSOEM
if defined demo goto ...

昨晚又测试了一下,在p5k-e上13分钟那里可以识别u盘并复制oem文件
不过在搜索oem文件的时候有点慢,硬盘工作很久,能不能限定一下搜索的文件夹或者文件名称,这样搜索oem文件的时候能快很多
作者: quya    时间: 2008-10-10 10:03
提示: 作者被禁止或删除 内容自动屏蔽
作者: quya    时间: 2008-10-10 10:10
提示: 作者被禁止或删除 内容自动屏蔽
作者: haonan    时间: 2008-10-10 11:15
原帖由 quya 于 2008-10-10 10:10 发表


我已经限定了不搜索系统盘符(安装的时候), 不搜索光盘I386, 安装完毕之后不搜索 %windir% 等.

如果是新机器,速度不会很慢的.兼容性和通用性比速度要更重要.

速度倒是还能接受,我的配置2140oc3g,4gram,一块640g一块320g一个8gU盘,搜索那里大概1分到2分钟

限定一下搜索文件夹,比如只搜索根目录下的oemxp目录,这样总是要快些的吧
反正都是可写介质,改改文件夹名字应该不是难事

[ 本帖最后由 haonan 于 2008-10-10 11:18 编辑 ]
作者: ttt0001    时间: 2008-10-10 21:39
原帖由 haonan 于 2008-10-10 11:15 发表

速度倒是还能接受,我的配置2140oc3g,4gram,一块640g一块320g一个8gU盘,搜索那里大概1分到2分钟

限定一下搜索文件夹,比如只搜索根目录下的oemxp目录,这样总是要快些的吧
反正都是可写介质,改改文件 ...



按照楼主的方法,我也去试了下,共安装6次均出现象下图的情况,结果就进不了系统了,不知道是什么原因?安装好系统直接在其他盘符下运行倒是可以的,真是郁闷!就这个文件复制不成功,其他的都可以!!!!

[ 本帖最后由 ttt0001 于 2008-10-10 21:41 编辑 ]

1.jpg (14.2 KB, 下载次数: 76)

1.jpg

作者: 欲飞    时间: 2008-10-10 23:24
有这种事!这个时候,什么程序在访问PIDGEN.DLL呢?这可有些难办了,可我在两台不同的品牌机上都试过了成功的啊。是不是这个时候系统正在进行激活啊,激活的过程中肯定是要访问PIDGEN.DLL的,我为了防止系统在安装的过程中激活,倒是把I386下的WINNT.SIF文件中[Unattended]下的AutoActivate = Yes这一行删除了,同时UnattendSwitch也设置成No,会不会是这个原因?能改一下WINNT.SIF测试一下吗?或者提供你用的WINNT.SIF文件看看。
作者: ttt0001    时间: 2008-10-11 06:41
其实 winnt.sif 就是下的您楼主的啊!
;SetupMgrTag
[Data]
    AutoPartition=0
    MsDosInitiated="0"
    UnattendedInstall="Yes"
    AutomaticUpdates = 1
[Unattended]
    OemSkipEula = Yes
    UnattendSwitch = Yes
    WaitForReboot = No
    OemPreinstall="Yes"
    TargetPath=\WINDOWS
[GuiUnattended]
    OEMSkipRegional = 1
    TimeZone=210
[RegionalSettings]
    LanguageGroup=10
[Components]
    OEAccess = Off
[UserData]
    ProductKey=MRX3F-47B9T-2487J-KWKMF-RPWBY
[GuiRunOnce]
[Identification]
    JoinWorkgroup=WORKGROUP
[Networking]
    InstallDefaultComponents=Yes
作者: haonan    时间: 2008-10-11 09:41
原帖由 欲飞 于 2008-10-10 23:24 发表
有这种事!这个时候,什么程序在访问PIDGEN.DLL呢?这可有些难办了,可我在两台不同的品牌机上都试过了成功的啊。是不是这个时候系统正在进行激活啊,激活的过程中肯定是要访问PIDGEN.DLL的,我为了防止系统在安 ...

装了两次也是PIDGEN无法复制,不过好在装好系统以后这个文件就没用了,不影响激活
能想办法搞完美一点吗
另外,发现dell oemsp3里的这两个文件居然和中文零售版sp3里的crc不一样

[ 本帖最后由 haonan 于 2008-10-11 09:43 编辑 ]
作者: ayyllll    时间: 2008-10-11 13:33
原帖由 haonan 于 2008-10-11 09:41 发表

装了两次也是PIDGEN无法复制,不过好在装好系统以后这个文件就没用了,不影响激活
能想办法搞完美一点吗
另外,发现dell oemsp3里的这两个文件居然和中文零售版sp3里的crc不一样

有可能是505/SP1/SP2整合SP3,得到这两个文件。
作者: 欲飞    时间: 2008-10-11 13:48
原帖由 ttt0001 于 2008-10-11 06:41 发表
其实 winnt.sif 就是下的您楼主的啊!
;SetupMgrTag
[Data]
    AutoPartition=0
    MsDosInitiated="0"
    UnattendedInstall="Yes"
    AutomaticUpdates = 1

    OemSkipEula = Yes
    Unatten ...

我上传的附件里面的WINNT.SIF扩展名不对,后面多了个.TXT也就是说我上传的附件里面其实是WINNT.SIF.TXT,要用它的话需要改名把“.TXT“删了。
作者: guye12315    时间: 2008-10-11 13:56
支持期待原创作品
作者: HuAnGkUn    时间: 2008-10-11 14:04
高手过招,学习学习~~
作者: 星语风    时间: 2008-10-11 15:24
原帖由 欲飞 于 2008-10-11 13:48 发表

我上传的附件里面的WINNT.SIF扩展名不对,后面多了个.TXT也就是说我上传的附件里面其实是WINNT.SIF.TXT,要用它的话需要改名把“.TXT“删了。


早就发现你的winnt.sif.txt扩展名不对,我早改过扩展名了,不过还是在复制pidgen.dll的时候出错
楼主能找一个网络空间把你能复制成功的盘上传供我们测试一下吗?www.rayfile.com这个空间就不错
作者: ttt0001    时间: 2008-10-11 15:57
WINNT.SIF的扩展名我也是改了的!原因还没有找到!
作者: wlsx    时间: 2008-10-12 04:10
第一条很值得学习,支持一下
作者: 欲飞    时间: 2008-10-12 19:17
本来不想提供整个镜像的,但现在都说用我方法不成功,那我就把我测试成功的整个镜像放到星语风介绍的空间上去。有兴趣的下载了测试一下吧。不过,我猜测,覆盖pidgen.dll不成功,可能跟机器速度有关系,安装在T13分钟这里是异步的,这边覆盖还没到,安装程序已经在激活这步了。只要把覆盖这一步的时机调整一下应该就可以了。改好了再发上来。
测试镜像下载
作者: pingsha    时间: 2008-10-12 20:30
期待方法发布,在这学习了
作者: dkfbzm    时间: 2008-10-12 20:30
支持楼主欲飞,期待方法发布,在这学习了。
作者: 摇摆    时间: 2008-10-12 23:09
非一般的感觉。。
作者: 欲飞    时间: 2008-10-13 01:18
没有什么根本性的改变,只不过把检测替换OEM文件的时机改到安装完成之后进行。在虚拟机上测试,也是可以的。替换PIDGEN.DLL失败的朋友可以用这个办法试试。具体改变如下:
      1.INSTALLS.CMD的位置由$OEM$下放到了$OEM$\$1下,因为已经不再由CMDLINES.TXT处调用,所以必须把INSTALLS.CMD放到硬盘上去,而$OEM$\$1下的东西安装完成后会拷贝到系统根目录下。
      2.在INSTALLS.CMD的最后增加了一行DEL %0即删除自身,安装完成后它已经没有用,所以删掉,因为我不想在安装好的系统上留下垃圾。
      3.I386\WINNT.SIF增加了[SetupParams]段,内容是:UserExecute=%SYSTEMDRIVE%\INSTALLS.CMD,通过这里指定安装程序在完成后调用。注意:OemPreinstall="Yes"还是必须的,因为INSTALLS.CMD还是要靠这种方式拷贝到硬盘上,而这种方式是在安装过程中拷贝文件到硬盘上最简单的方式,如果是修改TXTSETUP.SIF或者DOSNET.INF就要麻烦一些。
      我仍然只把目录结构和自定义的几个文件作为附件上传,需要用的仍然自己准备VOL版的安装文件、对应品牌的4个OEM文件、OEM版或RTL版的2个序列号相关文件。
      试用结果如何、有何建议请告知。其实原理明白之后,这种类型的修改已经没有什么技术性了,如果这次修改解决了替换PIDGEN.DLL失败的问题,我准备就此打住了。如果还有问题,那……就继续改吧,反正安装过程中还有好几次机会让我们运行自己的程序。呵呵。
     [更正] 一个不小心,又把INSTALLS.CMD的一行分成了两行,一大早就已经有5次下载,前5次下载的,请重下,Sorry!

[ 本帖最后由 欲飞 于 2008-10-13 08:21 编辑 ]

AUTOOEM.rar

83.95 KB, 下载次数: 158, 下载积分: 无忧币 -2


作者: haonan    时间: 2008-10-13 10:17
原帖由 欲飞 于 2008-10-13 01:18 发表
没有什么根本性的改变,只不过把检测替换OEM文件的时机改到安装完成之后进行。在虚拟机上测试,也是可以的。替换PIDGEN.DLL失败的朋友可以用这个办法试试。具体改变如下:
      1.INSTALLS.CMD的位置由$OEM$下 ...

GuiRunOnce字段和UserExecute字段效果有什么区别
作者: zxkh19501    时间: 2008-10-13 12:28
楼主分享精神很好,赞
作者: 欲飞    时间: 2008-10-13 12:47
原帖由 haonan 于 2008-10-13 10:17 发表

GuiRunOnce字段和UserExecute字段效果有什么区别

      根据微软的文档,GuiRunOnce是在安装完成第一次登录时运行,而UserExecute是在安装完成时,还未重启前运行。在这两个时间点上进行替换操作的效果应该是差不多的。由于GuiRunOnce是依懒于用户的,至于是否必须在WINNT.SIF中设置AutoLogon='Yes'才有效我没有试过。所以我选择放在UserExecute这里来做替换操作,如果还不能解决问题可以考虑放在GuiRunOnce这里来试一下。
      其实,替换操作还有一个最佳时机,那就是DetachedProgram,但这个地方似乎还不能调用批处理,而用批处理大家都能看见,不能藏什么见不得人的东东,呵呵。所以,实在不行再考虑这个地方。大家先试试上面的吧。
作者: haonan    时间: 2008-10-13 13:49
原帖由 欲飞 于 2008-10-13 12:47 发表

      根据微软的文档,GuiRunOnce是在安装完成第一次登录时运行,而UserExecute是在安装完成时,还未重启前运行。在这两个时间点上进行替换操作的效果应该是差不多的。由于GuiRunOnce是依懒于用户的,至于是 ...

其实PIDGEN.DLL替换成功与否不影响激活状态,这个文件好像只是在输入序列号的时候有用
作者: 星语风    时间: 2008-10-13 13:56
在59楼从rayfile下载楼主提供的XP安装盘来试着安装,还是出现pidgen.dll不能替换的情况

63楼的文件没试,估计也是同样结果,我已完全丧失了信心了

1.jpg (34.01 KB, 下载次数: 82)

1.jpg

作者: ttt0001    时间: 2008-10-13 15:33
原帖由 星语风 于 2008-10-13 13:56 发表
在59楼从rayfile下载楼主提供的XP安装盘来试着安装,还是出现pidgen.dll不能替换的情况

63楼的文件没试,估计也是同样结果,我已完全丧失了信心了





我也去试了一下,情况和你一样,倒是下了楼主的测试盘安装成功,再从测试盘中提取出相关文件也安装成功不知道是什么原因?另外楼主的测试盘中还有其他的文件不知道是干什么用的?
作者: 欲飞    时间: 2008-10-13 16:32
原帖由 星语风 于 2008-10-13 13:56 发表
在59楼从rayfile下载楼主提供的XP安装盘来试着安装,还是出现pidgen.dll不能替换的情况

63楼的文件没试,估计也是同样结果,我已完全丧失了信心了

59楼的测试盘就是最初的方法是在T13时替换,63楼是方法不变但是改在了T8时替换,是试图解决PIDDEN.DLL不能替换的问题的,你应该用这个试试。你有兴趣我就继续支持,直到你的问题解决。否则,只有等到我遇到你这样的问题再说了。

[ 本帖最后由 欲飞 于 2008-10-13 16:52 编辑 ]
作者: quya    时间: 2008-10-13 16:45
提示: 作者被禁止或删除 内容自动屏蔽
作者: 欲飞    时间: 2008-10-13 16:47
原帖由 ttt0001 于 2008-10-13 15:33 发表

我也去试了一下,情况和你一样,倒是下了楼主的测试盘安装成功,再从测试盘中提取出相关文件也安装成功不知道是什么原因?另外楼主的测试盘中还有其他的文件不知道是干什么用的?

TOOLS下面的东西吗?一个换号脚本CHANGE.VBS,一个从Microsoft AIK中提出来的WIM镜像文件的工具(IMAGEX.EXE、WIMFLTR.INF、WIMFLTR.SYS),一个也是从Microsoft AIK中提出来的CD/DVD镜像文件制作工具OSCDIMG.EXE。另外是不是还有两个文件夹?PXE下是PXE网络引导镜像制作工具,TFTP就是简单文件传输协议程序了。放这两个在光盘上主要是怕遇到没有光驱的机器,用这两个来在别的机器上做网络引导用的。这些东西都不会自动运行,放在那里是有点不妥,不想要直接删了就是,不影响的。
顺便问一下,你是用16楼的方法失败,但是用59楼的成功了吗?那两个其实是一回事啊,怪了。
作者: 欲飞    时间: 2008-10-13 16:55
原帖由 quya 于 2008-10-13 16:45 发表
1. 替换这2个文件一定要在安全模式下进行, 或者相当于安全模式, 比如T13 时间段.
2. 替换的时候最好先替换 \system32\dllcache 下, 再替换 \system32 下, 因为系统一旦发现 \system32 下文件被替换, 会立即从  ...

第2点有一定道理,但我无论是进行安装测试还是在正常模式下测试从来没有遇到过文件保护的问题。我从来就是在正常模式下测试的,N次测试中,只有一次是OEMSCAN无法读取内存,就是没有一次替换文件不成功的。
作者: ttt0001    时间: 2008-10-13 17:28
原帖由 欲飞 于 2008-10-13 16:55 发表

第2点有一定道理,但我无论是进行安装测试还是在正常模式下测试从来没有遇到过文件保护的问题。我从来就是在正常模式下测试的,N次测试中,只有一次是OEMSCAN无法读取内存,就是没有一次替换文件不成功的。



我用的是你的测试盘(59楼)成功的,从测试盘提取相关的也成功,用16楼和63楼的都是不成功。到现在我还没想出来是什么问题!,郁闷中。。。

[ 本帖最后由 ttt0001 于 2008-10-13 17:34 编辑 ]
作者: 星语风    时间: 2008-10-13 17:34
原帖由 欲飞 于 2008-10-13 16:32 发表

59楼的测试盘就是最初的方法是在T13时替换,63楼是方法不变但是改在了T8时替换,是试图解决PIDDEN.DLL不能替换的问题的,你应该用这个试试。你有兴趣我就继续支持,直到你的问题解决。否则,只有等到我遇到你 ...

用63楼的办法,依然是无法替换文件,汗……

未命名.JPG (38.65 KB, 下载次数: 87)

未命名.JPG

作者: quya    时间: 2008-10-13 17:53
提示: 作者被禁止或删除 内容自动屏蔽
作者: ttt0001    时间: 2008-10-13 17:54
原帖由 星语风 于 2008-10-13 17:34 发表

用63楼的办法,依然是无法替换文件,汗……



你有没有用楼主的测试盘试过,测试盘能成功!用16楼和63楼的我和你一样没有成功过,见鬼了!真是想不通!
作者: 星语风    时间: 2008-10-13 18:04
楼主的59楼测试盘,一样的测试失败
作者: ttt0001    时间: 2008-10-13 20:03
刚才我在批处理的每条语句后加了一个pause,重新测试了一下还是跟74“星语风”所帖图一样!其实还是有“pidgen.dll“复制不成功的,真是奇怪!不过安装完却能进系统,而且是激活了的,唉!真是见鬼了,不知道是怎么回事?搞不懂,头都晕了!
作者: ttt0001    时间: 2008-10-13 22:14
搞了半天没搞出什么东东来,倒是知道到底是装那个OEM,并且用楼主的方法稍作改动一下就可同时自动装入oemlogo.bmp和oeminfo.ini这两文件到指定目录了,这样你就真正知道是装的哪个OEM了。
作者: 欲飞    时间: 2008-10-13 22:31
标题: 是不是就是因为那个PAUSE?
那个PAUSE能不能加到后面去,放到后面也一样能够看到前面的情况。是不是就是因为那个PAUSE下来后,安装进程还在继续,正好调用了PIDGEN.DLL。我的确从来没有这样加PAUSE看过具体步骤,只知道安装完成重启后系统是激活了的,并且还能通过官网的正版验证。我的测试盘是集成了正版验证补丁的,如果不能通过验证一启动就看得到提示。至于ttt0001的描述,quya也解释了,就是Dllcache下的那个换成功了,那重启之后system32下的会自动换成dllcache下的那个等于也是换成功了。也就是说,目的是达到了的。不知道星语风的系统在重启之后是不是激活了的,如果不是,那还得继续研究,如果已经是激活了的,我认为这个问题可以放一放了。
      如果要想在批处理里面看到替换成功,目前暂时可以考虑两点,一是按quya的建议,调整替换的顺序,先换dllcache下的,再换system32下的;二是把pause放到后面去,让前面的替换一气呵成。但是我很怀疑这两点的作用,因为很明显复制失败不是因为文件保护,因为文件保护是在文件被改变之后改回去,而不是改的时候就不让改,我在正式环境下替换,是能明显看到复制成功的。如果是文件保护,正式环境下应该更不可能成功才对。把pause放到后面,也只不过是乱试而已,哪里可能就是pause一下,安装程序就会去调用pidgen.dll呢,不可能就只有那一瞬间不调用吧。
      如果在正常环境下替换是成功的,那为了批处理中PAUSE看到也是成功的,那不妨把调用批处理改到GuiRunOnce这里来,这样看上去就没问题了。另外也可考虑我在66楼提到的DetachedProgram这个位置,这个位置相信不会系统不会再不允许替换了,只是我在DetachedProgram直接放批处理测试,根本没有调用,似乎这里还没有建立CMD.EXE与CMD文件的关联,似乎只能用CMD.EXE+参数的方法运行命令,同时,不会有窗口弹出来。另外就是这里换了文件,但winnt.sif里面的序列号却是VOL版的,肯定会影响激活,必须得在T13或者是T8的某点时间再次换号,前面换文件的同时换号肯定不行,也就是说换文件和换号必须得分开进行。比较麻烦。
作者: 欲飞    时间: 2008-10-13 22:46
原帖由 ttt0001 于 2008-10-13 22:14 发表
搞了半天没搞出什么东东来,倒是知道到底是装那个OEM,并且用楼主的方法稍作改动一下就可同时自动装入oemlogo.bmp和oeminfo.ini这两文件到指定目录了,这样你就真正知道是装的哪个OEM了。

OEMSCAN.INI中每一个标识下除了PATH这个参数外,还可以有一个CMD参数当检测到某个品牌标识后自动运行一个命令,反正品牌的LOGO与品牌是固定搭配,在那里去执行拷贝oemlogo.bmp和oeminfo.ini的工作好了。不用动脑筋去改批处理。
其实我们的根本目的是能够正常激活,能够通过正版验证。VOL版目前已经做到了,而OEM版与VOL版就强在不会被封。现在大家都知道了,其实VOL以及各种OEM版其实就那6个文件不一样而已,各OEM版之间还只有4个文件不一样,是哪一种版本的,有什么关系!
作者: ttt0001    时间: 2008-10-13 23:03
原帖由 欲飞 于 2008-10-13 22:31 发表
那个PAUSE能不能加到后面去,放到后面也一样能够看到前面的情况。是不是就是因为那个PAUSE下来后,安装进程还在继续,正好调用了PIDGEN.DLL。我的确从来没有这样加PAUSE看过具体步骤,只知道安装完成重启后系统 ...




的确是你描述的那样,不过顺序换不换我的测试结果是一样的!重启都能激活!关于在正常情况下进行替换不会出错,全部替换正确,我已试验了两次了,没有出现不能进系统的情况!还有增加OEM标志的问题,我没有改你的批处理!OEMSCAN.INI和在OEM目录再加一个批处理oemcopy.cmd:

oemcopy.cmd
copy oemlogo.bmp %SystemRoot%\System32\
copy oeminfo.ini %SystemRoot%\System32\

OEMSCAN.INI
CODE[Dell System]
PATH=".\Dell\"
CMD=".\Dell\OEMCOPY.CMD"

也是你说的CMD参数吧!

如果说这样的话,就我的测试情况看已经没有问题了,谢谢楼主!
作者: 欲飞    时间: 2008-10-14 00:51
原帖由 ttt0001 于 2008-10-13 23:03 发表
的确是你描述的那样,不过顺序换不换我的测试结果是一样的!重启都能激活!关于在正常情况下进行替换不会出错,全部替换正确,我已试验了两次了,没有出现不能进系统的情况!还有增加OEM标志的问题,我 ...

      1.我在正常情况下替换不出错,并且不仅仅是过一两分钟再重启,我有时是玩了半天后再重启都不会有quya说的不能进系统的情况。
      2.你是这样拷OEMLOGO文件啊,简单,明了。如果我做,我还打算用变量什么的呢,原来没有那么复杂啊!呵呵。

[ 本帖最后由 欲飞 于 2008-10-14 00:58 编辑 ]
作者: ttt0001    时间: 2008-10-14 10:46
楼主能不能提供小弟一个比较完整的OEMSCAN.INI配置文件,自己整理怕漏了!谢谢!
作者: quya    时间: 2008-10-14 13:31
提示: 作者被禁止或删除 内容自动屏蔽
作者: 欲飞    时间: 2008-10-14 14:30
原帖由 quya 于 2008-10-14 13:31 发表
你确信正常情况下替换不出错? 在VOL替换成OEM的时候? 如果OEM to OEM, 当然不会出错.

对简单的OEMLOGO拷贝,当然可以在 oemscan.ini里边做, 但如果考虑到不同的特征码使用同样OEM文件, 不同的OEMLOGO, 例 ...

是的,正常情况下VOL换成OEM,然后再OEM换成OEM,又OEM换回VOL,再循环都没有问题。再说,正常情况下测试,只不过是验证批处理写得是否正确,有必要去考虑文件是否被系统文件保护换回来没有吗?只要最终的安装盘能成功安装正确的、激活的、能通过正版验证的系统就达到目的。不是吗?
在OEMSCAN.INI中不同的特征码使用相同的PATH、不同或相同的CMD有何问题?难道不能实现不同的特征码使用相同的文件相同的LOGO?
作者: lwz    时间: 2008-10-16 10:03
标题: 回复 #87 欲飞 的帖子
顶一下
希望制作为傻瓜版[,让我等下载来就能用,合盘时只要往里面复制一下就行了
作者: come2jojo    时间: 2008-10-21 14:16
我感兴趣
支持楼主
顶起来
作者: 七仙花    时间: 2008-10-21 15:43
一口气看完了所有的回帖,真是大开眼界,有时间自己也弄一个
作者: yangyang76    时间: 2008-10-22 19:28
我是来学习的,有些大侠确实厉害。
作者: Z512967594    时间: 2008-11-9 20:53
OEM知道 OVL 是不是音量啊?
作者: xiaoqiu    时间: 2008-11-10 11:14
全部看完了,有的地方还不是太懂。等找个时间仔细学习下
作者: wl66c    时间: 2008-11-11 16:29
写的确实不错,楼主的热心与研究精神值得大家学习!
作者: lygdell    时间: 2008-11-12 10:26
支持楼主,不过还是有点难度
作者: haonan    时间: 2008-11-15 13:07
原帖由 欲飞 于 2008-10-13 12:47 发表

      根据微软的文档,GuiRunOnce是在安装完成第一次登录时运行,而UserExecute是在安装完成时,还未重启前运行。在这两个时间点上进行替换操作的效果应该是差不多的。由于GuiRunOnce是依懒于用户的,至于是 ...

终于发现PIDGEN.DLL替换不成功有什么坏处了,就是如果用这个系统来重新封装做万能ghost,不管安装成什么系统,封装过程都是需要vol序列号,就是因为PIDGEN.DLL这个文件,但是如果装成了oem,就会导致恢复过后系统进不去,因为oembios文件是oem的,序列号是vol的
作者: 双响炮    时间: 2008-11-27 10:18
偶也是再次一口气看完,是篇极品帖,有点不明白,就是OEM.REG到底是用哪个系统序列号比较好
作者: 太白山    时间: 2008-12-2 18:56
帖子确实不错,学习一下提高不少!
作者: coolhui    时间: 2008-12-3 23:20
很不错,支持一个~~谢谢分享~~
作者: zh753200    时间: 2009-1-2 20:18
支持一个~~谢谢分享~~




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