1
mirror of https://github.com/rapid7/metasploit-payloads synced 2024-11-20 14:39:22 +01:00
metasploit-payloads/c/meterpreter/make.bat

91 lines
2.3 KiB
Batchfile
Raw Normal View History

2013-09-03 14:31:38 +02:00
@ECHO OFF
IF "%1"=="clean" GOTO CLEAN
IF "%1"=="docs" GOTO DOCS
2013-10-29 04:46:46 +01:00
IF "%VCINSTALLDIR%" == "" GOTO NEED_VS
IF NOT EXIST "source\ReflectiveDLLInjection\.git" (
ECHO Meterpreter's submodule dependencies can't be found.
ECHO From your git console, please run:
ECHO $ git submodule init ^&^& git submodule update
GOTO END
)
2020-04-14 06:24:30 +02:00
SET PSSDK_VER=19
SET PTS_VER=v141_xp
IF "%1"=="v120_xp" SET PTS_VER=%1
IF "%2"=="v120_xp" SET PTS_VER=%2
IF "%3"=="v120_xp" SET PTS_VER=%3
IF "%VisualStudioVersion%" == "12.0" (
SET PSSDK_VER=12
SET PTS_VER=v120_xp
)
SET PREF=
2015-06-01 15:28:12 +02:00
IF EXIST "..\..\..\pssdk\PSSDK_VC%PSSDK_VER%_LIB\_Libs\pssdk_vc%PSSDK_VER%_mt.lib" SET PREF=r7_
2013-09-03 14:31:38 +02:00
IF "%1"=="x86" GOTO BUILD_X86
2013-11-21 03:06:50 +01:00
IF "%1"=="X86" GOTO BUILD_X86
IF "%1"=="x64" GOTO BUILD_X64
IF "%1"=="X64" GOTO BUILD_X64
ECHO "Building Meterpreter x64 and x86 (Release)"
SET PLAT=all
GOTO RUN
2013-09-03 14:31:38 +02:00
:BUILD_X86
ECHO "Building Meterpreter x86 (Release)"
SET PLAT=x86
GOTO RUN
:BUILD_X64
ECHO "Building Meterpreter x64 (Release)"
SET PLAT=x64
GOTO RUN
:RUN
PUSHD workspace
msbuild.exe make.msbuild /target:%PREF%%PLAT% /p:PlatformToolset=%PTS_VER%
2013-09-03 14:31:38 +02:00
POPD
IF "%ERRORLEVEL%" == "0" (
2015-06-01 15:28:12 +02:00
IF NOT EXIST "..\..\..\pssdk\" (
ECHO Unable to build ext_server_sniffer:
ECHO PSSDK directory not found.
ECHO This is normal if you do not expect to have access to Rapid7 proprietary
ECHO sniffer source. Meterpreter will still function normally without this.
) else (
2015-06-01 15:28:12 +02:00
IF NOT EXIST "..\..\..\pssdk\PSSDK_VC%PSSDK_VER%_LIB\_Libs\pssdk_vc%PSSDK_VER%_mt.lib" (
ECHO Unable to build ext_server_sniffer:
ECHO PSSDK lib version 'vc%PSSDK_VER%' not found.
ECHO This is normal if you do not expect to have access to Rapid7 proprietary
ECHO sniffer source. Meterpreter will still function normally without this.
)
)
)
FOR /F "usebackq tokens=1,2 delims==" %%i IN (`wmic os get LocalDateTime /VALUE 2^>NUL`) DO IF '.%%i.'=='.LocalDateTime.' SET LDT=%%j
SET LDT=%LDT:~0,4%-%LDT:~4,2%-%LDT:~6,2% %LDT:~8,2%:%LDT:~10,2%:%LDT:~12,6%
echo Finished %ldt%
GOTO END
2013-09-03 14:31:38 +02:00
:CLEAN
IF EXIST "output\x86\" (
del output\x86\ /S /Q
)
IF EXIST "output\x64\" (
del output\x64\ /S /Q
)
GOTO END
:DOCS
tools\doxygen\doxygen.exe doxygen.cnf
GOTO END
2013-09-03 14:31:38 +02:00
:NEED_VS
ECHO "This command must be executed from within a Visual Studio Command prompt."
ECHO "This can be found under Microsoft Visual Studio (2013|2017|2019) -> Visual Studio Tools"
2013-09-03 14:31:38 +02:00
:END