批处理BAT使用记录
combin.bat
rem @echo off
cls
set srcdir=%~1
set outdir=%~d1%~p1
set outname=%~n1
set outpath="%outdir%%outname%.txt"
%~d1
cd %srcdir%
del %outpath%
echo outpath: %outpath%
echo load filelist please wait...
for /f "delims=" %%a in ('dir /b') do call :ProcessOne "%srcdir%\%%a"
goto End
:ProcessOne
set curfile=%1
set curname=%~n1%~x1
echo %curfile%
echo file:%curname%>>%outpath%
type %curfile%>>%outpath%
echo.>>%outpath%
echo.>>%outpath%
goto :eof
:End
pause
register.bat
@echo off
cls
set srcdir=%~1
if exist %~1 if not exist %~1\nul goto DoFile
%~d1
cd %srcdir%
echo load filelist please wait...
for /f "delims=" %%a in ('dir /b') do call :ProcessOne "%srcdir%\%%a"
goto End
:ProcessOne
set curfile=%1
regsvr32 %curfile% /s
if '%errorlevel%' NEQ '0' goto fail
:pass
echo reg-pass %curfile%
goto :eof
:fail
echo reg-fail %curfile%
goto :eof
:DoFile
call :ProcessOne %~1
goto End
:End
pause
ilcpp.bat
@echo off
set cppdll=%1
set dlldir=%~d1%~p1
set cppdir=%~d1%~p1
set outdir=.\ilout
set copydir=%cppdir%\ilout\
set dataname=""
for /f "delims=" %%a in ('dir %dlldir%*. /b') do call :FindDataDir %%a
if "%dataname%"=="" (goto Errordataname)
echo dataname find: %dataname%
set cppmeta=%cppdir%%dataname%\il2cpp_data\Metadata\global-metadata.dat
md %outdir% 2>null
md %copydir% 2>null
copy /Y %cppdll% .\GameAssembly.dll
copy /Y %cppmeta% .\global-metadata.dat
rem C#
rem Il2CppDumper.exe GameAssembly.dll global-metadata.dat <nul
rem echo Y|Il2CppDumper.exe GameAssembly.dll global-metadata.dat
Il2CppDumper.exe GameAssembly.dll global-metadata.dat
copy config.json %outdir%
copy dump.cs %outdir%
copy ida.py %outdir%
copy ida_with_struct.py %outdir%
copy il2cpp.h %outdir%
copy ilbase.h %outdir%
copy script.json %outdir%
copy stringliteral.json %outdir%
xcopy %outdir% %copydir% /Y
goto :eof
:FindDataDir
set curfile=%1
set endname=%curfile:~-5%
if "%endname%"=="_Data" (goto FindDataDirOK)
goto :eof
:FindDataDirOK
set dataname=%curfile%
goto :eof
:Errordataname
echo dataname find fail!
goto :eof
if defined table_Detail1 (
set testlog=%table_Detail1%
rem set testlog="%testlog:\\=\%" :testlog转换不可放到括号内,当使用set和:
rem set dbg="%testlog:\\=\%" :当使用set和:时,括号使用预处理,该值为括号前的值,dbg实际为原来的值
)
set testlog="%testlog:\\=\%"
uncompyle6_dir.bat
@echo off
cls
set outdir=V:\temp
set pyapp=E:\App\python370\python.exe
set pyscp=E:\App\python370\Scripts\uncompyle6-script.py
set srcdir=%~1
if exist %~1 if not exist %~1\nul goto DoFile
%~d1
cd %srcdir%
echo load filelist please wait...
for /f "delims=" %%a in ('dir /b') do call :ProcessOne "%srcdir%\%%a"
pause
goto End
:ProcessOne
set curfile=%1
%pyapp% "%pyscp%" -o "%outdir%" "%curfile%"
goto :eof
:DoFile
call :ProcessOne %~1
goto End
:End

浙公网安备 33010602011771号