标题: 原创:32位系统下,用cmd脚本 修改任意文件任意位置的 HEX,函数方式调用 [打印本页]
作者: tkaven 时间: 2012-4-19 18:36 标题: 原创:32位系统下,用cmd脚本 修改任意文件任意位置的 HEX,函数方式调用
- @Echo off&Mode con cols=80 lines=26&setlocal EnableDelayedExpansion&color a&Title 修改任意文件的HEX [-☆Ver: 1.1 -☆ By_ 凌枫工作组 Q群:35962310 ☆-]
- chcp 437>nul&graftabl 936>nul
-
- rem 调用方法:
- rem call :修改HEX "100 FFFF" "第一要替换的数值+,+第二个要替换的数值+,+三+,+四+,+....+,+第N个" "要把第一个替换为的数值+,+要把第二个替换为的数值+,+三+,+四+,+....+,+第N个" "要修改的文件的路径"
-
- rem 比如 破解 XP SP3 的TCPIP连接数,由原来的 10 破解为 512:
-
- rem 下面调用的参数的意思是:
- rem 将 %windir%\system32\drivers\tcpip.sys 文件里
- rem 数值为 05 00 0A 00 00 00 的地方 修改为:05 00 00 02 00 00
- rem 数值为 6B ED 05 00 01 00 的地方 修改为:6E EF 05 00 01 00
-
-
- call :修改HEX "100 FFFF" "05 00 0A 00 00 00+,+6B ED 05 00 01 00" "05 00 00 02 00 00+,+6E EF 05 00 01 00" "%windir%\system32\drivers\tcpip.sys"
- exit
-
- :修改HEX
- for %%p in ("!tmp!\Blocks") do md %%p 2>nul&set BkTmpP=%%~p
- if not exist !BkTmpP!\1 (
- set CutF_V=!tmp!\CutFile.vbs
- (
- Echo iCutSize = 1024 * 64
- Echo With CreateObject^("Adodb.Stream"^)
- Echo .Open
- Echo .Type = 1
- Echo .LoadFromFile^("%~4" ^)
- Echo iBlocks = .Size / iCutSize
- Echo If iBlocks ^<^> Fix^(iBlocks^) Then iBlocks = iBlocks+1
- Echo Set S = CreateObject^("Adodb.Stream"^)
- Echo For i = 1 To iBlocks
- Echo .Position = ^(i - 1^) * iCutSize
- Echo S.Type = 1
- Echo S.Mode = 3
- Echo S.Open
- Echo .CopyTo S, iCutSize
- Echo S.SaveToFile "!BkTmpP!\" ^& i, 2
- Echo S.Close
- Echo Next
- Echo .Close
- Echo End With
- )>!CutF_V!
- wscript.exe /b !CutF_V!
- )
- set V_2=%2&set V_2=!V_2:+="!
- set V_3=%3&set V_3=!V_3:+="!
- FOR %%a in (!V_2!) do (
- set /a Var1=!Var1!+1&set Var2=
- FOR %%A in (!V_3!) do (
- set /a Var2=!Var2!+1
- if "!Var1!"=="!Var2!" for /f %%Y in ('dir "!BkTmpP!\*" /b /o:n') do for /f "tokens=*" %%Z in ('Echo exit^|cmd/kprompt $_S %~1 %%~a $_Q^|debug !BkTmpP!\%%Y^|find ":"') do Echo exit|cmd/kprompt $_S %~1 %%~a $_E %%Z %%~A $_W $_Q|debug !BkTmpP!\%%Y >nul
- )
- )
- set Files=&for /f %%F in ('dir "!BkTmpP!\*" /b /o:n') do set Files=!Files!+"!BkTmpP!\%%F"/b
- copy /y !Files:~1! "已修改_%~n4%~x4" >nul
- Del /f /s /q "!BkTmpP!\*.*" >nul
- goto :eof
复制代码
作者: lxzzr 时间: 2012-4-19 21:45
如果原文能找到出处,还请注明,谢谢
作者: gawk 时间: 2012-4-20 17:24
回复 2# lxzzr
我猜楼主就是凌枫工作组
作者: tkaven 时间: 2012-4-21 16:12
本人原创的 。。。。 以组织的名义 发表的~~~ 请移到原创区吧~~ 谢谢啦!
作者: lxzzr 时间: 2012-5-11 22:51
回复 4# tkaven
大概研究了下,你这个脚本,不支持长文件名,中文名暂且不论,文件大小有限制,不能大于576KB,望改进,加油!
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |