EasyOEM 1.0 NT5\6 OEM信息快速修改工具是我的原创作品,最近开发1.2版,就想先把1.0的代码开源出来。
附件不想下载的话,请在运行EasyOEM后不关闭,在我的电脑(计算机)地址栏输入%temp%\cheng.tmp\easyoem\1.0提取。
源码仅在阿木电脑吧发布,源程序及截图见https://www.ampc8.com/forum.php?mod=viewthread&tid=5022
- Global Const $ES_AUTOVSCROLL = 64
- Global Const $ES_AUTOHSCROLL = 128
- Global Const $ES_READONLY = 2048
- Global Const $ES_WANTRETURN = 4096
- Global Const $__EDITCONSTANT_WS_VSCROLL = 0x00200000
- Global Const $__EDITCONSTANT_WS_HSCROLL = 0x00100000
- Global Const $GUI_SS_DEFAULT_EDIT = BitOR($ES_WANTRETURN, $__EDITCONSTANT_WS_VSCROLL, $__EDITCONSTANT_WS_HSCROLL, $ES_AUTOVSCROLL, $ES_AUTOHSCROLL)
- Global Const $GUI_EVENT_CLOSE = -3
- Global Const $GUI_CHECKED = 1
- Global Const $GUI_UNCHECKED = 4
- Global Const $GUI_ENABLE = 64
- Global Const $GUI_DISABLE = 128
- Global Const $TCCM_FIRST = 0X2000
- Global Const $WS_MINIMIZEBOX = 0x00020000
- Global Const $WS_SYSMENU = 0x00080000
- Global Const $WS_VSCROLL = 0x00200000
- Global Const $WS_CAPTION = 0x00C00000
- Global Const $WS_POPUP = 0x80000000
- Global Const $GUI_SS_DEFAULT_GUI = BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU)
- Break(0)
- Dim $XTBB = "未知"
- Dim $NT = "未知"
- Dim $havelogo = 0
- If @OSVersion = "WIN_XP" Then $XTBB = "XP"
- If @OSVersion = "WIN_2000" Then $XTBB = "2K"
- If @OSVersion = "WIN_2003" Then $XTBB = "2K3"
- If @OSVersion = "WIN_XPe" Then $XTBB = "XP"
- If @OSVersion = "WIN_VISTA" Then $XTBB = "VISTA"
- If @OSVersion = "WIN_2008" Then $XTBB = "2K8"
- If @OSVersion = "WIN_7" Then $XTBB = "W7"
- If @OSVersion = "win_2008R2" Then $XTBB = "2K8R2"
- If $XTBB = "未知" Then
- MsgBox(0, "EasyOEM", "您的系统不支持EasyOEM!")
- Exit
- EndIf
- If $XTBB = "XP" Or $XTBB = "2K" Then $NT = 5
- If $XTBB = "2K3" Then $NT = 5
- If $XTBB = "VISTA" Or $XTBB = "2K8" Then $NT = 6
- If $XTBB = "W7" Or $XTBB = "2K8R2" Then $NT = 6
- DirCreate(@TempDir & "\cheng.tmp\EasyOEM\1.0")
- FileInstall("easyoem.ico", @TempDir & "\cheng.tmp\EasyOEM\1.0\EASYOEM.ico")
- FileInstall("EASYOEM.bmp", @TempDir & "\cheng.tmp\EasyOEM\1.0\EASYOEM.bmp")
- $Form1 = GUICreate("辰cheng - EasyOEM 1.0", 601, 363)
- $Pic1 = GUICtrlCreatePic(@TempDir & "\cheng.tmp\EasyOEM\1.0\EASYOEM.bmp", 0, 0, 147, 362)
- DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $Form1, "int", 1000, "long", 0x00080000)
- $Label1 = GUICtrlCreateLabel("欢迎使用EasyOEM——NT5\6 OEM快速设置工具", 147, 8, 432, 25)
- GUICtrlSetFont(-1, 16, 400, 0, "黑体")
- $Label2 = GUICtrlCreateLabel("当前系统版本:", 152, 32, 88, 17)
- If $XTBB = "XP" Then $XTBBWIN = "Windows XP NT5"
- If $XTBB = "2K" Then $XTBBWIN = "Windows 2000 NT5"
- If $XTBB = "2K3" Then $XTBBWIN = "Windows 2003 NT5"
- If $XTBB = "VISTA" Then $XTBBWIN = "Windows Vista NT6"
- If $XTBB = "2008" Then $XTBBWIN = "Windows 2008 NT6"
- If $XTBB = "W7" Then $XTBBWIN = "Windows 7 NT6"
- If $XTBB = "2008R2" Then $XTBBWIN = "Windows 2008R2 NT6"
- $Label3 = GUICtrlCreateLabel($XTBBWIN, 240, 32, 286, 17)
- $Tab1 = GUICtrlCreateTab(152, 48, 441, 297)
- $TabSheet1 = GUICtrlCreateTabItem("OEM修改")
- $Group1 = GUICtrlCreateGroup("LOGO预览(浏览后生效)", 160, 80, 137, 145)
- $Pic2 = GUICtrlCreatePic("", 168, 96, 120, 120)
- GUICtrlCreateGroup("", -99, -99, 1, 1)
- $Label4 = GUICtrlCreateLabel("品牌:", 304, 88, 31, 17)
- $Input1 = GUICtrlCreateInput("", 336, 88, 249, 21)
- $Label5 = GUICtrlCreateLabel("型号:", 304, 112, 31, 17)
- $Input2 = GUICtrlCreateInput("", 336, 112, 249, 21)
- $Label6 = GUICtrlCreateLabel("服务时间(NT6):", 304, 136, 90, 17)
- $Input3 = GUICtrlCreateInput("", 392, 136, 193, 21)
- $Label7 = GUICtrlCreateLabel("技术热线(NT6):", 304, 160, 90, 17)
- $Input4 = GUICtrlCreateInput("", 392, 160, 193, 21)
- $Label8 = GUICtrlCreateLabel("网站(NT6):", 304, 184, 66, 17)
- $Input5 = GUICtrlCreateInput("", 368, 184, 217, 21)
- $Label9 = GUICtrlCreateLabel("LOGO(名为OEMLOGO.BMP):", 304, 208, 150, 17)
- $Button1 = GUICtrlCreateButton("浏览(&B)", 440, 205, 75, 19)
- $Label11 = GUICtrlCreateLabel("技术支持信息(NT5,限制20行):", 160, 227, 214, 17)
- $Edit1 = GUICtrlCreateEdit("", 160, 244, 289, 65, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN, $WS_VSCROLL))
- GUICtrlSetData(-1, StringFormat(""))
- $Checkbox1 = GUICtrlCreateCheckbox("将2345导航设为IE首页", 160, 320, 305, 17)
- GUICtrlSetState(-1, $GUI_CHECKED)
- $Button2 = GUICtrlCreateButton("应用(&A)", 472, 312, 105, 25)
- $Label17 = GUICtrlCreateLabel("注册到(NT5):", 456, 232, 126, 17)
- $Input7 = GUICtrlCreateInput("", 456, 256, 129, 21)
- $Input8 = GUICtrlCreateInput("", 456, 280, 129, 21)
- If $NT = 5 Then
- GUICtrlSetState($Input3, $GUI_DISABLE)
- GUICtrlSetState($Input4, $GUI_DISABLE)
- GUICtrlSetState($Input5, $GUI_DISABLE)
- EndIf
- If $NT = 6 Then
- GUICtrlSetState($Edit1, $GUI_DISABLE)
- GUICtrlSetState($Input7, $GUI_DISABLE)
- GUICtrlSetState($Input8, $GUI_DISABLE)
- EndIf
- $TabSheet3 = GUICtrlCreateTabItem("帮助")
- $Label10 = GUICtrlCreateLabel("辰cheng - EasyOEM NT5\6 OEM快速修改工具", 160, 80, 420, 17)
- GUICtrlSetColor(-1, 0x0000FF)
- $Label12 = GUICtrlCreateLabel("作者博客:http://hi.baidu.com/辰cheng_", 160, 104, 423, 17)
- GUICtrlSetColor(-1, 0xFF0000)
- $Label13 = GUICtrlCreateLabel("支持网站:http://www.2345.com/?kaa001", 160, 128, 423, 17)
- GUICtrlSetColor(-1, 0xFF0000)
- $Label14 = GUICtrlCreateLabel("本软件可以检测Windows系统版本,如果此版本支持EasyOEM,EasyOEM就会根据", 160, 152, 430, 17)
- GUICtrlSetColor(-1, 0x008000)
- $Label15 = GUICtrlCreateLabel("系统版本来选择OEM修改项目。现支持Windows2000\XP\2003\Vista\2008(R2)\7", 160, 176, 428, 17)
- GUICtrlSetColor(-1, 0x008000)
- $Label16 = GUICtrlCreateLabel("Windows操作系统,以后版本会支持更多的Windows新系统。", 160, 200, 432, 17)
- GUICtrlSetColor(-1, 0x008000)
- $Label18 = GUICtrlCreateLabel("当OEM修改完成后,按一下[应用(A)],就修改成功了!", 160, 224, 431, 17)
- GUICtrlSetColor(-1, 0x008000)
- $Label19 = GUICtrlCreateLabel("别忘了支持作者,将2345网址导航设为IE首页!", 160, 248, 254, 17)
- GUICtrlSetColor(-1, 0xFF0000)
- $Label20 = GUICtrlCreateLabel("注意:本程序误报率较高,但本程序不会伤害您的系统,如有误报请放行。", 160, 272, 390, 17)
- GUICtrlSetColor(-1, 0x800000)
- $TabSheet4 = GUICtrlCreateTabItem("关于")
- $Edit2 = GUICtrlCreateEdit("", 160, 149, 425, 153, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_READONLY, $ES_WANTRETURN, $WS_VSCROLL))
- GUICtrlSetData(-1, StringFormat("辰cheng - EasyOEM NT5\6 OEM快速修改工具\r\n\r\n\r\n本程序由辰cheng编写,您可以随意传播本程序,但传播带来的后果作者不承担责任。\r\n\r\n编程:AutoIt\r\n\r\n感谢roustar31、pppyyy02的源码参考。\r\n\r\n感谢168kingmu对博客的支持。\r\n\r\n还有一些不知道昵称的人。\r\n\r\n博客:http://hi.baidu.com/辰cheng\r\n\r\n网址导航:http://www.2345.com/?kaa001\r\n\r\n辰cheng 二〇一二年一月"))
- GUICtrlSetBkColor(-1, 0xFFFFFF)
- $Icon1 = GUICtrlCreateIcon(@TempDir & "\cheng.tmp\EasyOEM\1.0\EASYOEM.ico", -1, 160, 88, 48, 48)
- $Label21 = GUICtrlCreateLabel("EasyOEM 1.0", 208, 88, 360, 17)
- GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
- $Label22 = GUICtrlCreateLabel(" NT5\6 OEM快速修改工具 ", 208, 104, 144, 17)
- $Label23 = GUICtrlCreateLabel("(C) 2012 辰cheng原创作品", 216, 120, 353, 17)
- $LINK1 = GUICtrlCreateLabel("作者博客", 160, 320, 52, 17)
- GUICtrlSetCursor(-1, 0)
- GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
- GUICtrlSetColor(-1, 0x0000FF)
- $LINK2 = GUICtrlCreateLabel("支持网站", 216, 320, 52, 17)
- GUICtrlSetCursor(-1, 0)
- GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
- GUICtrlSetColor(-1, 0x0000FF)
- GUICtrlCreateTabItem("")
- GUISetState(@SW_SHOW)
- While 1
- $nMsg = GUIGetMsg()
- Switch $nMsg
- Case $GUI_EVENT_CLOSE
- DirRemove(@TempDir & "\cheng.tmp\EasyOEM\1.0", 1)
- Exit
- Case $Checkbox1
- If GUICtrlRead($Checkbox1) = $GUI_UNCHECKED Then
- $2345 = MsgBox(25 + 1 + 23 + 200 + 6 + 50, "EasyOEM", "您确定要这样做吗?" & @LF & "这样会让作者失去收益,导致程序停止开发新版本。" & @LF & "2345网址也是特别优秀的网址导航站。", 0, $Form1)
- If $2345 = 2 Then GUICtrlSetState($Checkbox1, $GUI_CHECKED)
- EndIf
- Case $LINK1
- Run(@ProgramFilesDir & "\Internet Explorer\iexplore.exe http://hi.baidu.com/%B3%BDcheng_/home")
- Case $LINK2
- Run(@ProgramFilesDir & "\Internet Explorer\iexplore.exe http://www.2345.com/?kaa001")
- Case $Button1
- $openlogo = FileOpenDialog("选择BMP格式的LOGO(请先改名为OEMLOGO.BMP)", @MyDocumentsDir, "名为OEMLOGO.BMP的图片(OEMLOGO.BMP)", 1, "OEMLOGO.BMP", $Form1)
- GUICtrlSetImage($Pic2, $openlogo)
- If $openlogo <> 0 Then $havelogo = 1
- Case $Button2
- GUICtrlSetState($Input1, $GUI_DISABLE)
- GUICtrlSetState($Input2, $GUI_DISABLE)
- GUICtrlSetState($Button2, $GUI_DISABLE)
- GUICtrlSetState($Button1, $GUI_DISABLE)
- GUICtrlSetState($Checkbox1, $GUI_DISABLE)
- If $NT = 5 Then
- GUICtrlSetState($Edit1, $GUI_DISABLE)
- GUICtrlSetState($Input7, $GUI_DISABLE)
- GUICtrlSetState($Input8, $GUI_DISABLE)
- EndIf
- If $NT = 6 Then
- GUICtrlSetState($Input1, $GUI_DISABLE)
- GUICtrlSetState($Input2, $GUI_DISABLE)
- GUICtrlSetState($Input3, $GUI_DISABLE)
- GUICtrlSetState($Input4, $GUI_DISABLE)
- GUICtrlSetState($Input5, $GUI_DISABLE)
- EndIf
- If GUICtrlRead($Checkbox1) = $GUI_CHECKED Then
- RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main", "Start Page", "REG_SZ", "http://www.2345.com/?kaa001")
- $var = RegRead("HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main", "Start Page")
- If $var <> "http://www.2345.com/?kaa001" Then RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main", "Start Page", "REG_SZ", "http://www.2345.com/?kaa001")
- EndIf
- If GUICtrlRead($Input1) = "" Then MsgBox(64, "EasyOEM", "如果没有品牌,某些项目可能会修改失效!正在试图修改。")
- If $NT = 5 Then NT5()
- If $NT = 6 Then NT6()
- EndSwitch
- WEnd
- Func NT5()
- $a = GUICtrlRead($Input1)
- $b = GUICtrlRead($Input2)
- If $havelogo = 1 Then
- $f = $openlogo
- FileCopy($f, @SystemDir, 1)
- EndIf
- $g = GUICtrlRead($Input7)
- $h = GUICtrlRead($Input8)
- IniDelete(@SystemDir & "\oeminfo.ini", "Support Information")
- IniDelete(@SystemDir & "\oeminfo.ini", "General")
- If FileExists(@SystemDir & "\oeminfo.ini") = 0 Then FileInstall("oeminfo.ini", @SystemDir & "\oeminfo.ini")
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion", "RegisteredOrganization", "REG_SZ", $h)
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion", "RegisteredOwner", "REG_SZ", $g)
- IniWrite(@SystemDir & "\oeminfo.ini", "General", "Manufacturer", $a)
- IniWrite(@SystemDir & "\oeminfo.ini", "General", "Model", $b)
- $getedit = GUICtrlRead($Edit1)
- $split = StringSplit($getedit, @LF)
- If FileExists(@SystemDir & "\oemlogo.bmp") = 1 Then FileDelete(@SystemDir & "\oemlogo.bmp")
- If $split[0] > 1 Then
- For $i = 1 To $split[0]
- IniWrite(@SystemDir & "\oeminfo.ini", "Support Information", "line" & $i, $split[$i])
- Next
- ElseIf $split[0] = 1 Then
- IniWrite(@SystemDir & "\oeminfo.ini", "Support Information", "line1", $split[1])
- EndIf
- If GUICtrlRead($Input1) <> "" Then MsgBox(64, "EasyOEM", "NT5OEM信息修改完成。", 0, $Form1)
- GUICtrlSetState($Input1, $GUI_ENABLE)
- GUICtrlSetState($Input2, $GUI_ENABLE)
- GUICtrlSetState($Button2, $GUI_ENABLE)
- GUICtrlSetState($Button1, $GUI_ENABLE)
- GUICtrlSetState($Checkbox1, $GUI_ENABLE)
- GUICtrlSetState($Edit1, $GUI_ENABLE)
- GUICtrlSetState($Input7, $GUI_ENABLE)
- GUICtrlSetState($Input8, $GUI_ENABLE)
- EndFunc
- Func NT6()
- If $havelogo = 1 Then
- $logo = $openlogo
- FileCopy($logo, @SystemDir & "\oobe\Info", 9)
- EndIf
- $oser = GUICtrlRead($Input1)
- $pc = GUICtrlRead($Input2)
- $phone = GUICtrlRead($Input4)
- $time = GUICtrlRead($Input3)
- $net = GUICtrlRead($Input5)
- RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "logo")
- RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "Manufacturer")
- RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "Model")
- RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "SupportHours")
- RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "SupportPhone")
- RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "SupportURL")
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "logo", "REG_SZ", @SystemDir & "\oobe\Info\oemlogo.bmp")
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "Manufacturer", "REG_SZ", $oser)
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "Model", "REG_SZ", $pc)
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "SupportHours", "REG_SZ", $time)
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "SupportPhone", "REG_SZ", $phone)
- RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation", "SupportURL", "REG_SZ", $net)
- If GUICtrlRead($Input1) <> "" Then MsgBox(64, "EasyOEM", "NT6OEM信息修改完成。", 0, $Form1)
- GUICtrlSetState($Input2, $GUI_ENABLE)
- GUICtrlSetState($Button2, $GUI_ENABLE)
- GUICtrlSetState($Button1, $GUI_ENABLE)
- GUICtrlSetState($Checkbox1, $GUI_ENABLE)
- GUICtrlSetState($Input1, $GUI_ENABLE)
- GUICtrlSetState($Input2, $GUI_ENABLE)
- GUICtrlSetState($Input3, $GUI_ENABLE)
- GUICtrlSetState($Input4, $GUI_ENABLE)
- GUICtrlSetState($Input5, $GUI_ENABLE)
- EndFunc
复制代码
附件:
|