让你的PE穿上华丽的外衣




不想让自己制作的PE界面总是那么简陋?下面教你一招,让你的PE穿上华丽的外衣——themes.

先说原理:Winlogon启动后先初始化一些全局变量,检测HKEY_LOCAL_MACHINE\SYSTEM\Setup下的SystemSetupInProgress是否为0,如果是正常启动,如果为1,则在启动系统服务SamSs时告诉它不要管SAM数据库,启动一些必要的服务后,比如Services,lsass,然后就启动HKEY_LOCAL_MACHINE\SYSTEM\Setup下由CMDline指定的程序,等待程序结束,重启或者关机。如果SystemSetupInProgress == 1,则初始化系统服务后调用MSgina.DLL登录XP。MSgina.Dll 在初始化时调用SHsvcs.Dll产生一个ThemesStartEvent系统级事件,代码如下:

#define ThemeWatchForStart_Ordinal 1

#define ThemeWaitForServiceReady_Ordinal 2

typedef DWORD (_stdcall *PFN_ThemeWaitForServiceReady)(DWORD dwTimeout);

typedef BOOL (_stdcall *PFN_ThemeWatchForStart)(void);


HMODULE hShsvcs = LoadLibrary(_T("shsvcs.dll"));

if( hShsvcs != NULL )

{

PFN_ThemeWaitForServiceReady pfThemeWait

= (PFN_ThemeWaitForServiceReady)GetProcAddress( hShsvcs, (LPCSTR)ThemeWaitForServiceReady_Ordinal);

PFN_ThemeWatchForStart pfThemeWatch

= (PFN_ThemeWatchForStart)GetProcAddress( hShsvcs,(LPCSTR)ThemeWatchForStart_Ordinal);

if( pfThemeWait != NULL &&

pfThemeWatch != NULL )

{

pfThemeWait(1000);

pfThemeWatch();

}

CloseHandle(hShsvcs);

}

 
  开工吧:

  一、启用Themes需要以下文件:修改版的Winlogon调用Msgina.Dll或直接修改MinLogon(XPE Feathure Pack 2007 中有此文件),Winlogon,Msgina.dll,Shsvcs.dll,Activeds.dll,uxtheme.dll,themeui.dll,sxs.dllC:\Windows\WinSxS\Manifests文件夹中的(对应SP3)
x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83.cat
x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83.Manifest
C:\Windows\WinSxS\Policies\x86_policy.6.0.Microsoft.Windows.Common-Controls_6595b64144ccf1df_x-ww_5ddad775
  文件夹下的:
6.0.2600.5512.cat
6.0.2600.5512.Policy
C:\Windows\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83
  文件夹下的:
comctl32.dll
  还有一些Windows文件夹System32下的文件,自己研究吧。(用Depends工具找一找文件的依赖关系)
  二、修改文件。(均已SP3的文件为例)使用UltraEdit打开文件,Winlogon.exe 查找AF46FFFF85C07512,将最后的12改为27,查找:
56E8151D000056 FF7614E8FC,修改为56E8151D000056 E8BC91FFFF(看清了,只修改最后五位);打开SXS.Dll查找530079007300740065006d005300650074007500700049006e00500072006f00670072006500可以看到S.e.t.u.p.I.n.p.r.o.g.r.e.s.s的字样,把最后的s改成t,即73改成74。
  修改WinPE的注册表,在SYSTEM\Setup下比照着SystemSetupInProgress新建一个REG_DWORD值SystemSetupInProgrest,设为0。

  特别注意:要修改services.exe中的SystemSetupInProgress为SystemSetupInProgrest。
  同时,测试了基于bartpe的xpe硬盘版,因为xpe使用自己的pegina.dll重新进入sas序列,所以无法启用主题。

  三、上传一个修改过的Minlogon,切记修改注册表。
  对了,最重要的是别忘了加上你自己的主题文件,它们一般在Windows\Resources文件夹下。传了一个压缩的,是用我心如水的PE做的,(hhh333的也不错,不过他的是SP2的,测试不方便)我重新上传一个精简过文件的IS_文件,可直接替换我心如水里面的winpe.is_。
  1、修改的注册表,添加了一些键值,比如对DX8游戏的支持;
  2、修改为支持双核,理论上能在P4以上单核上启动;
  3、自动检测硬件,安装驱动。(必须有相应的INF和驱动文件)
  今天上传了一个自己用的Img格式的内核,根据站长的研究使主题自动开启。其中添加了VC2005的运行库,内置NV显示驱动,配合外置的DX9可以玩现在的新游戏了。
  有一个小问题,墙纸不能自动加载是因为Windows只认bmp格式的图片,jpg格式的要转换成bmp。把你需要的墙纸转换成bmp,然后再修改HKEY_CURRENT_USER\Control Panel\Desktop下的WallPaper路径指向你自己的图片。



常见问题:

最新文章:
    冷言冷语冷伤人0
    2019/5/28
    厉害 我与格式化就差一念之差,幸好我在u盘恢复软件搜了一下不然可就毁了。速度很快,我还以为要很久。。。。
    猜一不透。0
    2019/5/28
    USBKiller-U盘启动盘非常好用,不像网上下载的系统乱七八糟的,新系统非常干净,安装也比较简单方便,步骤一目了然,操作简单。
    半真半假0
    2019/5/28
    使用这个U盘启动盘脑已经安装好了,操作简单方便,价格实惠质量好,东西用得很方便,这回在家就能自己会做系统了,物超所值。
    鸽屿0
    2019/5/28
    虽然u盘恢复软件未能解决问题,可是态度是非常值得肯定的。
    草尖上的花泪0
    2019/5/28
    使用这个U盘启动盘脑已经安装好了,操作简单方便,价格实惠质量好,东西用得很方便,这回在家就能自己会做系统了,物超所值。
    失憶中 勿擾0
    2019/5/28
    U盘中毒文件修复真的很好,找U盘中毒文件修复很放心
    莪的付出、卻得卟到呐愛0
    2019/5/28
    很方便,感谢U盘中毒文件修复帮我解决了大问题。
    半真半假0
    2019/5/28
    请问大哥大姐IBM U盘驱动程序在那里下啊
    梦在深巷0
    2019/5/28
    u盘插电脑上提示U盘格式化,然后在u盘恢复软件上找到了解决办法,帮我恢复了u盘数据,万分感谢
    金鸡报喜福满门0
    2019/5/28
    由于我的失误把我明天要交的项目给删了,还好有万能的软件,帮我回复了文件,否则今天晚上真的难以入眠,超级超级感谢u盘恢复软件
    星语欣愿0
    2019/5/28
    回来装了三台电脑,效果很不错呢,里面办公用的各种软件都有,不需要再另外下载,U盘启动盘装机简单,用起来也非常好用,U盘读数据速度很快,装机利器,赞!
    陈酒幽梦0
    2019/5/28
    我对于U盘启动盘装系统完全不懂,原来用过的总是推荐一大推乱七八糟的东西,这款USBKiller-U盘启动盘是真的干净,而且以后可以自己无限做,开心。
为何选择U盘杀毒专家

全面查杀+主动防御=安全
专杀主流软件不能解决的U盘病毒
努力查杀任何一个新出现的U盘病毒
提供完善售后技术服务
清新界面,简单的步骤适合每个用户
针对不同需求,制定不同版本


U盘专杀 用户指南 联系我们 友情链接 友情链接 模版下载

版权所有 Copyright©2002-2019 U盘杀毒专家-蚂蚁传媒。