本帖最后由 sungjira 于 2009-10-11 10:07 编辑
Windows 7:同属 NT 6.X 的 Windows 7 与 Windows Vista 在欢迎屏幕样式方面几乎没有什么区别,Windows 7 欢迎屏幕的背景依然是一幅完整的图片,这都与 Windows
Vista 相同。
首先我们需要自己准备一张中意的欢迎屏幕背景图片,命名:
BackGroundDefault.JPG
保存至 Windows\\system32\\oobe\\info\\BackGrounds 文件夹中。顾名思义,BackGroundDefault.JPG 的分辨率设置为我们日常使用的桌面分辨率。另外,每一张 .JPG 图片的大小都不要超过 256KB,这是因为欢迎屏幕不允许使用 256KB 以上的图片以避免
加载时拖慢启动速度。
接下来我们需要打开令欢迎屏幕使用自定义背景图片的 OEM 选项,打开注册表编辑器定
位至:
HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\
Authentication\\LogonUI\\Background
新建 DWORD 值 OEMBackground 并将其设置为 1 即可。如果无权限修改注册表项,
请自行提升权限。
这样一来,Windows 7 便以我们自定义的图片做为欢迎屏幕背景了。
—————————————— 我自己根据这个写了一个小软件。
源代码:
1. 2. 3.
//made by SUNGJIRA //www.shuax.com
#include 4. 5. int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, 6. int iCmdShow) 7. 8. { char szTips[256]; 9. wsprintf(szTips, \"你应该选择一个图像大小为 %d * %d 的JPG文件。\\n另外大小不要超过 256kb,否则不会显示。\ GetSystemMetrics(SM_CYSCREEN)); 10. MessageBox(NULL, szTips, \"提示\ 11. 12. 13. OPENFILENAME ofn; 14. static char szFile[256]; 15. static char szFileTitle[256]; 16. memset(&ofn, 0, sizeof(ofn)); 17. ofn.lStructSize = sizeof(ofn); 18. ofn.lpstrFilter = \"JPG图像\\0*.jpg;\\0\\0\"; 19. ofn.nFilterIndex = 1; 20. ofn.lpstrFile = szFile; 21. ofn.nMaxFile = sizeof(szFile); 22. 23. ofn.lpstrFileTitle = szFileTitle; 24. ofn.nMaxFileTitle = sizeof(szFileTitle); 25. 26. ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_EXPLORER; 27. 28. 29. if (GetOpenFileName(&ofn)) 30. { 31. char SysDir[256]; 32. GetSystemDirectory(SysDir, 255); 33. strcat(SysDir, \"\\\\oobe\\\\info\\\\backgrounds\\\\backgroundDefault.jpg\"); 34. CopyFile(szFile, SysDir, false); 35. HKEY hKey; 36. DWORD dwData = 1; 37. RegOpenKeyEx(HKEY_LOCAL_MACHINE, \"Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Authentication\\\\LogonUI\\\\Backg round\ 38. RegSetValueEx(hKey, \"OEMBackground\ sizeof(DWORD)); 39. MessageBox(NULL, \"恭喜你,设置已经完成,按下WIN+L快速查看效果。\\"提示\MB_OK | MB_ICONINFORMATION); 40. } 41. else MessageBox(NULL, \"你没有选择文件,程序退出。\\"提示\MB_OK | MB_ICONWARNING); 42. return 0; 43. } 44. 复制代码 可执行文件: 我重写了软件: http://bbs.wmzhe.com/viewthread.php?tid=95148&extra=page%3D1 因篇幅问题不能全部显示,请点此查看更多更全内容