杉宫竹苑工作室

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2160|回复: 0

NSIS 破解系统主题文件

[复制链接]
发表于 2017-2-26 13:39:11 | 显示全部楼层 |阅读模式

正式会员享受无限制浏览网站功能和高速网盘下载,赶快加入本站吧!

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. !define HAVE_UPX
  2. !ifdef HAVE_UPX
  3. !endif
  4. SetCompressor /SOLID /FINAL lzma
  5. XPStyle on
  6. VAR PATFILE
  7. ICON IN.ico
  8. UninstallIcon UN.ico
  9. Name "Windows XP桌面主题支持"
  10. OutFile "Windows XP桌面主题支持.exe"
  11. InstallDir "$windir\AppPatch"
  12. ShowInstDetails show
  13. LoadLanguageFile "${NSISDIR}\Contrib\Language files\SimpChinese.nlf"
  14. LangString Name ${LANG_SIMPCHINESE} "Simplified Chinese"
  15. UninstPage uninstConfirm
  16. UninstPage instfiles
  17. Function .onInit
  18. SetSilent silent
  19. BringToFront
  20. ReadRegStr $R0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "CurrentVersion"
  21. StrCmp "$R0" '5.1' VER +1
  22. MessageBox MB_ICONSTOP|MB_OK "你的系统版本不是Windows XP(Windows 版本5.1),$\n安装此程序可能有风险,建议不要安装.$\n或将系统版本告诉我,寻找其它解决方法."
  23. abort "系统版本错误."
  24. VER:
  25. MessageBox MB_ICONQUESTION|MB_YESNO|MB_TOPMOST "是否安装Windows XP桌面主题支持?" IDYES +2
  26. quit
  27. SetSilent normal
  28. FunctionEnd
  29. Section
  30. InitPluginsDir
  31. GetDllVersion "$SYSDIR\UxTheme.dll" $0 $1
  32. StrCmp "$1" '190056580' SP2 +1
  33. StrCmp "$1" '183501906' SP1 +1
  34. MessageBox MB_ICONSTOP|MB_OK "UxTheme.dll版本不是此安装程序可识别的$\n$\r6.0.2800.1106(Windows XP Service Pack 1)$\n$\r或6.0.2900.2180(Windows XP Service Pack 2),$\n$\r所以安装将不能继续.并请与张润华联系!"
  35. abort "UxTheme.dll系统版本错误."
  36. SP1:
  37. DetailPrint '系统:Windows XP Service Pack 1'
  38. DetailPrint 'UxTheme.dll版本:6.0.2800.1106'
  39. STRCPY $PATFILE XPSP1.PAT
  40. goto Begin
  41. SP2:
  42. DetailPrint '系统:Windows XP Service Pack 2'
  43. DetailPrint 'UxTheme.dll版本:6.0.2900.2180'
  44. STRCPY $PATFILE XPSP2.PAT
  45. Begin:
  46. ;卸载信息
  47. DetailPrint '正在卸载旧有的Windows XP桌面主题支持...'
  48. ExecWait '"$INSTDIR\UnTheme.exe" /S _?=$INSTDIR'
  49. START:
  50. SetOverwrite off
  51. DetailPrint '正在清除Windows的备份文件,以免破解被恢复...'
  52. RMDir /r "$windir\LastGood"
  53. Delete "$sysdir\dllcache\*"
  54. SetDetailsPrint None
  55. ;MessageBox MB_ICONQUESTION|MB_YESNO "ok" idyes +2
  56. ;abort
  57. DetailPrint '正在准备破解文件...'
  58. GetFileTime "$Sysdir\UxTheme.dll" $R3 $R3
  59. CopyFiles /FILESONLY /SILENT "$SYSDIR\UxTheme.dll" "D:"
  60. RMDir /r "$windir\LastGood"
  61. Delete "$sysdir\dllcache\*"
  62. CopyFiles /FILESONLY /SILENT "$SYSDIR\UxTheme.dll" "$INSTDIR\ReUXTheme.crk"
  63. InitPluginsDir
  64. CopyFiles /FILESONLY /SILENT "$SYSDIR\UxTheme.dll" "$PLUGINSDIR\OldUxTheme.dll"
  65. rename "$SYSDIR\UxTheme.dll" "$PLUGINSDIR\^^.TMP"
  66. SETOUTPATH $PLUGINSDIR
  67. FILE XPSP1.PAT
  68. FILE XPSP2.PAT
  69. DetailPrint '正在破解UxTheme Library...'

  70. vpatch::vpatchfile "$PLUGINSDIR\$PATFILE" "$PLUGINSDIR\OldUxTheme.dll" "$PLUGINSDIR\UxTheme.dll"
  71. Pop $R0
  72. DetailPrint '$R0'
  73. STRCMP $R0 OK +1 Bad
  74. DetailPrint '破解成功!'
  75. RMDir /r "$windir\LastGood"
  76. Delete "$sysdir\dllcache\*"
  77. nsExec::ExecToLog 'CMD /C "xcopy /Y /V /H /R "$PLUGINSDIR\UxTheme.dll" "$SYSDIR""'
  78. CopyFiles /FILESONLY /SILENT "$PLUGINSDIR\UxTheme.dll" "$windir\LastGood\SYSTEM32"
  79. CopyFiles /FILESONLY /SILENT "$PLUGINSDIR\UxTheme.dll" "$sysdir\dllcache"
  80. CopyFiles /FILESONLY /SILENT "$PLUGINSDIR\UxTheme.dll" "$SYSDIR"
  81. GETFILETIME "$SYSDIR\UxTheme.dll" $R4 $R4
  82. STRCMP $R3 $R4 bad +1
  83. IfFileExists "$Sysdir\UxTheme.dll" Good DANG
  84. Bad:
  85. MessageBox MB_YESNO|MB_ICONEXCLAMATION "破解失效,可能是此软件还没有完善导致的,是否重试?" IDYES START IDNO +1
  86. DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\crUxTheme"
  87. rename "$SYSDIR\^^.TMP" "$PLUGINSDIR\UxTheme.dll"
  88. CopyFiles "$Instdir\ReUXTheme.crk" "$sysdir"
  89. CopyFiles "D:\UxTheme.dll" "$Sysdir"
  90. GETFILETIME "$SYSDIR\UxTheme.dll" $R5 $R5
  91. STRCMP $R3 $R5 +1 +2
  92. MessageBox MB_ICONINFORMATION|MB_OK "系统已经恢复原来状态!"
  93. ABORT
  94. DANG:
  95. MessageBox MB_ICONstop|MB_ok '危险!此程序安装后发现桌面主题支持文件"$Sysdir\UxTheme.dll"损坏且不可修复,$\n$\r请不要关闭计算机.插入WindowsXP安装盘.$\n$\r再按确定.'
  96. WriteINIStr "$Sysdir\UxTheme.dll" "1" "1" "1"
  97. DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\crUxTheme"
  98. abort

  99. Good:
  100. SetDetailsPrint both
  101. MessageBox MB_ICONINFORMATION|MB_OK '由于此程序更改了Windows XP的核心文件,$\n$\r所以肯定会弹出"Windows XP文件保护"框两三次,不用理会它.按[取消]即可.$\n$\r不会对系统做成危害.'
  102. strcpy $9 "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\crUxTheme"
  103. WriteRegStr HKLM "$9" "DisplayIcon" "$INSTDIR\Uninstall.exe"
  104. WriteRegStr HKLM "$9" "DisplayName" "$(^Name)"
  105. WriteRegStr HKLM "$9" "DisplayVersion" ""
  106. WriteRegStr HKLM "$9" "Publisher" "张润华"
  107. WriteRegStr HKLM "$9" "UninstallString" "$INSTDIR\UnTheme.exe"
  108. WriteRegStr HKLM "$9" "InstallLocation" "$INSTDIR"
  109. ReadRegStr $R1 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "RegisteredOwner"
  110. ReadRegStr $R2 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" "RegisteredOrganization"
  111. WriteRegStr HKLM "$9" "RegOwner" "$R1"
  112. WriteRegStr HKLM "$9" "RegCompany" "$R2"
  113. WriteRegStr HKLM "$9" "Contact" "张润华"
  114. WriteRegStr HKLM "$9" "Comments" "$(^Name)-制作:张润华"
  115. WriteUninstaller "$INSTDIR\UnTheme.exe"
  116. RMDIR /rebootok $PLUGINSDIR
  117. MessageBox MB_ICONQUESTION|MB_YESNO "安装成功!$\n$\r必须重启计算机后破解才能生效!$\n$\r是否立即重启?" idno +2
  118. reboot
  119. quit
  120. MessageBox MB_ICONINFORMATION|MB_OK "请尽快重启计算机防止更改被恢复!"
  121. SectionEnd
  122. Section "Uninstall"
  123. InitPluginsDir
  124. SetOverwrite off
  125. Rename "$sysdir\UxTheme.dll" "$PLUGINSDIR\~ux.tmp"
  126. Delete /rebootok "$PLUGINSDIR\~ux.tmp"
  127. Delete "$PLUGINSDIR\UxTheme.dll"
  128. CopyFiles "$INSTDIR\ReUXTheme.crk" "$sysdir\UxTheme.dll"
  129. CopyFiles "D:\UxTheme.dll" "$Sysdir"
  130. IfFileExists "$Sysdir\UxTheme.dll" OK +1
  131. MessageBox MB_ICONstop|MB_ok '危险!发现桌面主题支持文件"$Sysdir\UxTheme.dll"丢失,$\n请不要关闭计算机.插入WindowsXP安装盘.$\n再按确定.'
  132. WriteINIStr "$Sysdir\UxTheme.dll" "1" "1" "1"
  133. OK:
  134. Delete "$INSTDIR\UnTheme.exe"
  135. DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\crUxTheme"
  136. MessageBox MB_OK|MB_ICONINFORMATION "重启计算机后卸载将完成."
  137. RMDIR /rebootok "$PLUGINSDIR"
  138. SectionEnd
复制代码


回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SgzyStudio

GMT+8, 2024-5-19 02:58 , Processed in 0.113721 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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