688 lines
29 KiB
Batchfile
Executable File
688 lines
29 KiB
Batchfile
Executable File
@echo off
|
|
set outfile=x:\installed.txt
|
|
if not "%RSG_AUTOMATION_JOB_CACHE%"=="" set outfile=%RSG_AUTOMATION_JOB_CACHE%\installed.txt
|
|
if /i not "%~1"=="-nofile" if exist "%~dp0tee.exe" call "%~f0" -nofile %*|"%~dp0tee.exe" "%outfile%"&&if /i not "%1"=="-nopause" (pause&&goto:eof) else (goto:eof)
|
|
if /i "%~1"=="-nofile" shift
|
|
setlocal enabledelayedexpansion
|
|
title Installed SDKs and Support
|
|
call :getprojbranch "%RS_CODEBRANCH:\=" "%"
|
|
set stamp=
|
|
for /f "skip=1" %%t in ('wmic os get localdatetime') do if not defined stamp set stamp=%%t
|
|
echo.&&echo ================
|
|
echo %COMPUTERNAME% %USERNAME% %stamp%
|
|
echo ================
|
|
for /f "usebackq tokens=*" %%a in (`ver`) do echo %%a
|
|
set cphy=0&&for /f "usebackq tokens=1,* delims== " %%a in (`wmic cpu get NumberOfCores /value`) do if not "%%b"=="" set cphy=%%b
|
|
set clog=0&&for /f "usebackq tokens=1,* delims== " %%a in (`wmic cpu get NumberOfLogicalProcessors /value`) do if not "%%b"=="" set clog=%%b
|
|
set scur=0&&for /f "usebackq tokens=1,* delims== " %%a in (`wmic cpu get CurrentClockSpeed /value`) do if not "%%b"=="" set scur=%%b
|
|
set smax=0&&for /f "usebackq tokens=1,* delims== " %%a in (`wmic cpu get MaxClockSpeed /value`) do if not "%%b"=="" set smax=%%b
|
|
set cname=CPU&&for /f "usebackq tokens=1,* delims== " %%a in (`wmic cpu get Name /value`) do if not "%%b"=="" set cname=%%b
|
|
set memp=0&&for /f "usebackq tokens=1,* delims== " %%a in (`wmic computersystem get TotalPhysicalMemory /value`) do if not "%%b"=="" set memp=%%b
|
|
set netadr4=?.?.?.?&&for /f "usebackq tokens=2 delims=[]" %%a in (`ping -4 -a -n 1 %COMPUTERNAME% ^| findstr [`) do set netadr4=%%a
|
|
set netname=?&&for /f "usebackq tokens=2 delims=. " %%a in (`ping -4 -a -n 1 %netadr4% ^| findstr [`) do if "!netname!"=="?" set netname=%%a
|
|
echo CPU: %NUMBER_OF_PROCESSORS%/%clog%/%cphy% %scur%/%smax% %cname%
|
|
echo MEM: %memp%
|
|
echo NET: %netadr4% [%netname%]
|
|
echo ================
|
|
if "%SCE_ROOT_DIR%"=="" set %SCE_ROOT_DIR%=%PROGRAMFILES(X86)%\SCE
|
|
echo.&&echo PS4 SDK Support Tools:
|
|
if not exist "%SCE_ROOT_DIR%\ORBIS\Tools\Target Manager Server\bin\orbis-ctrl.exe" echo. [not installed]&&goto:skipsdktools
|
|
for /f "usebackq tokens=1,2" %%a in (`"%SCE_ROOT_DIR%\ORBIS\Tools\Target Manager Server\bin\orbis-ctrl.exe" version`) do (
|
|
set tname= %%a
|
|
echo. !tname:~-16! %%b
|
|
)
|
|
set testver=
|
|
set chkfile=%SCE_ROOT_DIR%\ORBIS\Tools\Neighborhood\bin\OrbisNeighborhoodx64.dll
|
|
if exist "%chkfile%" (
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="%chkfile:\=\\%" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "%testver%"=="" echo. Neighborhood: [unknown]
|
|
if not "%testver%"=="" echo. Neighborhood: %testver%
|
|
) else echo. Neighborhood: [not installed]
|
|
if exist "%SCE_ROOT_DIR%\ORBIS\Tools\Remote Viewer\bin\OrbisRemoteViewer.exe" (
|
|
set testver=
|
|
set "toolfile=%SCE_ROOT_DIR%\ORBIS\Tools\Remote Viewer\bin\OrbisRemoteViewer.exe"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!toolfile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
echo. Remote Viewer: !testver!
|
|
) else echo. Remote Viewer: [not installed]
|
|
:skipsdktools
|
|
echo.&&echo ================
|
|
echo.&&echo Available PS4 SDK versions on this PC:
|
|
if exist "%RS_CODEBRANCH%\sdk\orbis" (
|
|
set sdkdir=%RS_CODEBRANCH%\sdk\orbis
|
|
call :setsdkversion "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
if "%SCE_ORBIS_SDK_DIR%"=="" set SCE_ORBIS_SDK_DIR=%RS_CODEBRANCH%\sdk\orbis
|
|
)
|
|
if not "%SCE_ORBIS_SDK_DIR%"=="" if exist "%SCE_ORBIS_SDK_DIR%" (
|
|
if /i "!SCE_ORBIS_SDK_DIR:%RS_CODEBRANCH%=!"=="%SCE_ORBIS_SDK_DIR%" (
|
|
pushd "%SCE_ORBIS_SDK_DIR%\.."
|
|
for /d %%d in (*) do (
|
|
set sdkdir=!cd!\%%d
|
|
call :setsdkversion "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
)
|
|
popd
|
|
))
|
|
set rs3p=%RAGE_3RDPARTY%\sdk\orbis
|
|
if not exist "%rs3p%" set rs3p=x:\3rdparty\dev\sdk\orbis
|
|
if exist "%rs3p%" if "%SCE_ORBIS_SDK_DIR%"=="!SCE_ORBIS_SDK_DIR:%rs3p%=!" (
|
|
pushd ""%rs3p%"
|
|
for /d %%d in (*) do (
|
|
set sdkdir=!cd!\%%d
|
|
call :setsdkversion "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
)
|
|
popd
|
|
)
|
|
if "%SCE_ORBIS_SDK_DIR%"=="!SCE_ORBIS_SDK_DIR:%SCE_ROOT_DIR%=!" if exist "%SCE_ROOT_DIR%\orbis sdks" (
|
|
pushd "%SCE_ROOT_DIR%\orbis sdks"
|
|
for /d %%d in (*) do (
|
|
set sdkdir=!cd!\%%d
|
|
call :setsdkversion "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
)
|
|
popd
|
|
)
|
|
if "%SCE_ORBIS_SDK_DIR%"=="" goto:showfallbackps4
|
|
set sdkdir=%SCE_ORBIS_SDK_DIR%
|
|
call :setsdkversion "%sdkdir%"
|
|
:showfallbackps4
|
|
echo.&&echo Fallback PS4 SDK (default if not overridden by project):
|
|
if "%SCE_ORBIS_SDK_DIR%"=="" echo. [unset]
|
|
if not "%SCE_ORBIS_SDK_DIR%"=="" echo. %sdkversion%
|
|
:doneps4
|
|
echo.&&echo ================
|
|
set orbisctrl=%SCE_ROOT_DIR%\ORBIS\Tools\Target Manager Server\bin\orbis-ctrl.exe
|
|
if exist "%orbisctrl%" (
|
|
set defps4=
|
|
for /f "usebackq tokens=1" %%a in (`"%orbisctrl%" default 2^>nul`) do set defps4=%%a
|
|
if not "!defps4!"=="" (
|
|
echo.&&echo Default PS4 console: [!defps4!]
|
|
"%orbisctrl%" info !defps4! | findstr /i /c:"SdkVersion:" /c:"IpAddress:" /c:"MacAddress:" /c:"GameLanMacAddress:" /c:"GameLanStatus:" /c:" Name:" /c:"CommsPath:"
|
|
) else (
|
|
echo.&&echo No default PS4 console set.
|
|
)
|
|
echo.&&echo ================
|
|
)
|
|
goto:getps5
|
|
goto:eof
|
|
:setsdkversion
|
|
set sdkkind=
|
|
set sdkversion=?
|
|
if "%sdkdir%"=="" goto:eof
|
|
if not "%sdkdir%"=="!sdkdir:%SCE_ROOT_DIR%=!" set sdkkind=system/global
|
|
if /i "%sdkdir:~0,11%"=="x:\3rdparty" set sdkkind=rockstar/global
|
|
if not "%sdkdir%"=="!sdkdir:%RS_PROJROOT%=!" set sdkkind=current project: %RS_PROJECT%
|
|
if not "%sdkdir%"=="!sdkdir:%RS_CODEBRANCH%=!" set sdkkind=current project/branch: %RS_PROJECT%/%RS_BRANCH%
|
|
if "%sdkkind%"=="" set sdkkind=%SCE_ORBIS_SDK_DIR%
|
|
if not exist "%sdkdir%\target\include\sdk_version.h" goto:eof
|
|
pushd "%sdkdir%\target\include"
|
|
for /f "tokens=1,2,3" %%a in (sdk_version.h) do if /i "%%a"=="#define" if /i "%%b"=="SCE_ORBIS_SDK_VERSION" set sdkversion=%%c
|
|
popd
|
|
if "%sdkversion%"=="?" goto:eof
|
|
set sdkversion=%sdkversion:(=%
|
|
set sdkversion=%sdkversion:)=%
|
|
set sdkversion=%sdkversion:u=%
|
|
set sdkversion=%sdkversion:0x0=%
|
|
set sdkversion=%sdkversion:0x=%
|
|
set sdkversion=%sdkversion:~0,-6%.%sdkversion:~-6,3%.%sdkversion:~-3%
|
|
if not "%sdkkind%"=="%sdkkind:/global=%" set sdkversion=%sdkversion% (%sdkkind%: %~nx1)&&goto:eof
|
|
set sdkversion=%sdkversion% (%sdkkind%)
|
|
goto:eof
|
|
|
|
:getps5
|
|
echo.&&echo PS5 SDK Support Tools:
|
|
if not exist "%SCE_ROOT_DIR%\Prospero\Tools\Target Manager Server\bin\prospero-ctrl.exe" echo. [not installed]&&goto:skipsdktoolsps5
|
|
set testver=
|
|
set "chkfile=%SCE_ROOT_DIR%\Prospero\Tools\Target Manager Server\bin\prospero-ctrl.exe"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="%chkfile:\=\\%" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "%testver%"=="" echo. prospero-ctrl: [unknown]
|
|
if not "%testver%"=="" echo. prospero-ctrl: %testver%
|
|
for /f "usebackq tokens=1,2" %%a in (`"%SCE_ROOT_DIR%\Prospero\Tools\Target Manager Server\bin\prospero-ctrl.exe" diagnostics version`) do (
|
|
set tname= %%a
|
|
if /i "!tname:~-8!"=="version:" (
|
|
echo. !tname:~-16! %%b
|
|
))
|
|
set testver=
|
|
set "chkfile=%SCE_ROOT_DIR%\Prospero\Tools\Target Manager\bin\ProsperoTargetManagerx64.dll"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="%chkfile:\=\\%" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "%testver%"=="" echo. Target Manager: [unknown]
|
|
if not "%testver%"=="" echo. Target Manager: %testver%
|
|
if exist "%SCE_ROOT_DIR%\Prospero\Tools\Remote Viewer\bin\ProsperoRemoteViewer.exe" (
|
|
set testver=
|
|
set "toolfile=%SCE_ROOT_DIR%\Prospero\Tools\Remote Viewer\bin\ProsperoRemoteViewer.exe"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!toolfile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
echo. Remote Viewer: !testver!
|
|
) else echo. Remote Viewer: [not installed]
|
|
:skipsdktoolsps5
|
|
echo.&&echo ================
|
|
echo.&&echo Available PS5 SDK versions on this PC:
|
|
if exist "%RS_CODEBRANCH%\sdk\prospero" (
|
|
set sdkdir=%RS_CODEBRANCH%\sdk\prospero
|
|
call :setsdkversionps5 "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
if "%SCE_PROSPERO_SDK_DIR%"=="" set SCE_PROSPERO_SDK_DIR=%RS_CODEBRANCH%\sdk\prospero
|
|
)
|
|
if not "%SCE_PROSPERO_SDK_DIR%"=="" if exist "%SCE_PROSPERO_SDK_DIR%" (
|
|
if /i "!SCE_PROSPERO_SDK_DIR:%RS_CODEBRANCH%=!"=="%SCE_PROSPERO_SDK_DIR%" (
|
|
pushd "%SCE_PROSPERO_SDK_DIR%\.."
|
|
for /d %%d in (*) do (
|
|
set sdkdir=!cd!\%%d
|
|
call :setsdkversionps5 "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
)
|
|
popd
|
|
))
|
|
set rs3p=%RAGE_3RDPARTY%\sdk\prospero
|
|
if not exist "%rs3p%" set rs3p=x:\3rdparty\dev\sdk\prospero
|
|
if exist "%rs3p%" if "%SCE_ORBIS_SDK_DIR%"=="!SCE_PROSPERO_SDK_DIR:%rs3p%=!" (
|
|
pushd ""%rs3p%"
|
|
for /d %%d in (*) do (
|
|
set sdkdir=!cd!\%%d
|
|
call :setsdkversionps5 "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
)
|
|
popd
|
|
)
|
|
if "%SCE_PROSPERO_SDK_DIR%"=="!SCE_PROSPERO_SDK_DIR:%SCE_ROOT_DIR%=!" if exist "%SCE_ROOT_DIR%\prospero sdks" (
|
|
pushd "%SCE_ROOT_DIR%\prospero sdks"
|
|
for /d %%d in (*) do (
|
|
set sdkdir=!cd!\%%d
|
|
call :setsdkversionps5 "!sdkdir!"
|
|
if not "!sdkversion!"=="?" echo. !sdkversion!
|
|
)
|
|
popd
|
|
)
|
|
if "%SCE_PROSPERO_SDK_DIR%"=="" goto:showfallbackps5
|
|
set sdkdir=%SCE_PROSPERO_SDK_DIR%
|
|
call :setsdkversionps5 "%sdkdir%"
|
|
:showfallbackps5
|
|
echo.&&echo Fallback PS5 SDK (default if not overridden by project):
|
|
if "%SCE_PROSPERO_SDK_DIR%"=="" echo. [unset]
|
|
if not "%SCE_PROSPERO_SDK_DIR%"=="" echo. %sdkversion%
|
|
:doneps5
|
|
echo.&&echo ================
|
|
set prosperoctrl=%SCE_ROOT_DIR%\Prospero\Tools\Target Manager Server\bin\prospero-ctrl.exe
|
|
if exist "%prosperoctrl%" (
|
|
set defps5=
|
|
for /f "usebackq tokens=1,2 delims=-^ " %%a in (`"%prosperoctrl%" target get-default 2^>nul`) do if /i "%%a"=="hostname:" set defps5=%%b
|
|
if not "!defps5!"=="" (
|
|
echo.&&echo Default PS5 console: [!defps5!]
|
|
"%prosperoctrl%" target info /target:!defps5! | findstr /i /c:"SdkVersion:" /c:"IpAddress:" /c:"DEVLinkSpeed:" /c:"MacAddress:" /c:"GameLanStatus:" /c:"DevkitName:" /c:"CommsPath:"
|
|
) else (
|
|
echo.&&echo No default PS5 console set.
|
|
)
|
|
echo.&&echo ================
|
|
)
|
|
goto:getxdk
|
|
goto:eof
|
|
:setsdkversionps5
|
|
set sdkkind=
|
|
set sdkversion=?
|
|
if "%sdkdir%"=="" goto:eof
|
|
if not "%sdkdir%"=="!sdkdir:%SCE_ROOT_DIR%=!" set sdkkind=system/global
|
|
if /i "%sdkdir:~0,11%"=="x:\3rdparty" set sdkkind=rockstar/global
|
|
if not "%sdkdir%"=="!sdkdir:%RS_PROJROOT%=!" set sdkkind=current project: %RS_PROJECT%
|
|
if not "%sdkdir%"=="!sdkdir:%RS_CODEBRANCH%=!" set sdkkind=current project/branch: %RS_PROJECT%/%RS_BRANCH%
|
|
if "%sdkkind%"=="" set sdkkind=%SCE_PROSPERO_SDK_DIR%
|
|
if not exist "%sdkdir%\target\include\sdk_version.h" goto:eof
|
|
pushd "%sdkdir%\target\include"
|
|
for /f "tokens=1,2,3" %%a in (sdk_version.h) do if /i "%%a"=="#define" if /i "%%b"=="SCE_PROSPERO_SDK_VERSION" set sdkversion=%%c
|
|
popd
|
|
if "%sdkversion%"=="?" goto:eof
|
|
set sdkversion=%sdkversion:(=%
|
|
set sdkversion=%sdkversion:)=%
|
|
set sdkversion=%sdkversion:u=%
|
|
set sdkversion=%sdkversion:0x0=%
|
|
set sdkversion=%sdkversion:0x=%
|
|
set sdkversion=%sdkversion:~0,-6%.%sdkversion:~-6,3%.%sdkversion:~-3%
|
|
if not "%sdkkind%"=="%sdkkind:/global=%" set sdkversion=%sdkversion% (%sdkkind%: %~nx1)&&goto:eof
|
|
set sdkversion=%sdkversion% (%sdkkind%)
|
|
goto:eof
|
|
|
|
:getxdk
|
|
set xdkdir=%DURANGOXDK%
|
|
setlocal
|
|
if "%XDKEDITION%"=="" (
|
|
if exist "%DURANGOXDK%\bin\xbversioninfo.exe" (
|
|
for /f "usebackq tokens=1,2* delims==" %%a in (`"%DURANGOXDK%\bin\xbversioninfo.exe" /xdk /b`) do if "!XDKEDITION!"=="" if /i %%ax==xdkeditionx set XDKEDITION=%%b
|
|
) else if exist "%DURANGOXDK%\xdk\DurangoVars.cmd" (
|
|
pushd .
|
|
call "%DURANGOXDK%\xdk\DurangoVars.cmd" XDKVS2015 >nul
|
|
popd
|
|
))
|
|
title Installed SDKs
|
|
if not "%XDKEDITION%"=="" set xdkdir=%DURANGOXDK%\%XDKEDITION%
|
|
call :setxdkversion
|
|
echo.&&echo Current (default) Xbox One XDK version:
|
|
echo. %xdkversion%
|
|
endlocal
|
|
echo.&&echo All available Xbox One XDK versions on this PC:
|
|
call :setxdkversion
|
|
if not "!xdkversion!"=="?" echo. !xdkversion!
|
|
pushd "%DURANGOXDK%"
|
|
for /d %%d in (*) do (
|
|
set xdkdir=!cd!\%%d
|
|
call :setxdkversion
|
|
if not "!xdkversion!"=="?" echo. !xdkversion!
|
|
)
|
|
popd
|
|
echo.&&echo ================
|
|
goto:getgdk
|
|
:setxdkversion
|
|
set xdkversion=?
|
|
set xdkversionstr=unknown
|
|
set xdkversionmm=?
|
|
set xdkversionyyyy=?
|
|
set xdkversionqfe=
|
|
set xdkversioned=
|
|
set xdkversionfull=?
|
|
if not exist "%xdkdir%\xdk\include\shared\xdk.h" goto:eof
|
|
pushd "%xdkdir%\xdk\include\shared"
|
|
for /f "tokens=1,2,3,*" %%a in (xdk.h) do if /i "%%a"=="#define" (
|
|
if /i "%%b"=="_XDK_VER_STRING" set xdkversionstr=%%c %%d
|
|
if /i "%%b"=="_XDK_MM" call :setmonth %%c
|
|
if /i "%%b"=="_XDK_FULLYY" set xdkversionyyyy=%%c
|
|
if /i "%%b"=="_XDK_QFE_NUM" if not "%%c"=="0" set xdkversionqfe= QFE %%c
|
|
if /i "%%b"=="_XDK_VER" set xdkversion=%%c
|
|
if /i "%%b"=="_XDK_EDITION" set xdkversioned=%%c
|
|
if /i "%%b"=="_XDKVER_PRODUCTBUILDVER_FULL" set xdkversionfull=%%c
|
|
)
|
|
popd
|
|
if "%xdkversion%"=="?" goto:eof
|
|
if not "%xdkversionfull%"=="?" set xdkversion=%xdkversioned%
|
|
if not "%xdkversionmm%"=="?" set xdkversionstr=%xdkversionmm% %xdkversionyyyy% XDK%xdkversionqfe%
|
|
set xdkversion=%xdkversion: =% (%xdkversionstr:"=%)
|
|
if not "%xdkversionfull%"=="?" set xdkversion=%xdkversion% or %xdkversionfull%
|
|
goto:eof
|
|
|
|
:setmonth
|
|
if "%1"=="01" set xdkversionmm=January
|
|
if "%1"=="1" set xdkversionmm=January
|
|
if "%1"=="02" set xdkversionmm=February
|
|
if "%1"=="2" set xdkversionmm=February
|
|
if "%1"=="03" set xdkversionmm=March
|
|
if "%1"=="3" set xdkversionmm=March
|
|
if "%1"=="04" set xdkversionmm=April
|
|
if "%1"=="4" set xdkversionmm=April
|
|
if "%1"=="05" set xdkversionmm=May
|
|
if "%1"=="5" set xdkversionmm=May
|
|
if "%1"=="06" set xdkversionmm=June
|
|
if "%1"=="6" set xdkversionmm=June
|
|
if "%1"=="07" set xdkversionmm=July
|
|
if "%1"=="7" set xdkversionmm=July
|
|
if "%1"=="08" set xdkversionmm=August
|
|
if "%1"=="8" set xdkversionmm=August
|
|
if "%1"=="09" set xdkversionmm=September
|
|
if "%1"=="9" set xdkversionmm=September
|
|
if "%1"=="10" set xdkversionmm=October
|
|
if "%1"=="11" set xdkversionmm=November
|
|
if "%1"=="12" set xdkversionmm=December
|
|
goto:eof
|
|
|
|
|
|
:getgdk
|
|
set gdkdir=%GameDK%
|
|
setlocal
|
|
if "%GXDKEDITION%"=="" (
|
|
if exist "%gdkdir%\bin\xbversioninfo.exe" (
|
|
for /f "usebackq tokens=1,2* delims==" %%a in (`"%gdkdir%\bin\xbversioninfo.exe" /xdk /b`) do if "!GXDKEDITION!"=="" if /i %%ax==gxdkeditionx set GXDKEDITION=%%b
|
|
) else if exist "%gdkdir%\Command Prompts\GamingXboxVars.cmd" (
|
|
pushd .
|
|
call "%gdkdir%\Command Prompts\GamingXboxVars.cmd" GamingXboxScarlettVS2017 >nul
|
|
popd
|
|
))
|
|
title Installed SDKs
|
|
if not "%GXDKEDITION%"=="" set gdkdir=%gdkdir%\%GXDKEDITION%
|
|
call :setgxdkversion
|
|
echo.&&echo Current (default) GDK version:
|
|
echo. %gxdkversion%
|
|
endlocal
|
|
echo.&&echo All available GDK versions on this PC:
|
|
call :setgxdkversion
|
|
if not "!gxdkversion!"=="?" echo. !gxdkversion!
|
|
pushd "%gdkdir%"
|
|
for /d %%d in (*) do (
|
|
set gdkdir=!cd!\%%d
|
|
call :setgxdkversion
|
|
if not "!gxdkversion!"=="?" echo. !gxdkversion!
|
|
)
|
|
popd
|
|
echo.&&echo ================
|
|
set defxbox=
|
|
set xbconn=%gdkdir%\bin\xbconnect.exe
|
|
if not exist "%xbconn%" set xbconn=%DURANGOXDK%\bin\xbconnect.exe
|
|
if exist "%xbconn%" (
|
|
for /f "usebackq tokens=1" %%a in (`"%xbconn%" /b`) do if "!defxbox!"=="" set defxbox=%%a
|
|
echo.&&echo Default Xbox console: [!defxbox!]
|
|
"%xbconn%" /q !defxbox! | findstr /i /c:"host:" /c:"system:"
|
|
if exist "!xbconn:xbconnect=xbconfig!" "!xbconn:xbconnect=xbconfig!" /d /x:!defxbox! | findstr /i /c:"consolemode:" /c:"crashdumptype:" /c:"debugnic:" /c:"enablekerneldebugging:" /c:"enablevideocrashdumps:" /c:"extratitlememory:" /c:"profilingmode:" /c:"toolingmemoryoverflow:" /c:"debugmemorymode:" /c:"hostname:" /c:"ipaddress:" /c:"macaddress:" /c:"sandboxid:" /c:"osupdatepolicy:" /c:"defaultuser:"
|
|
echo.&&echo ================
|
|
)
|
|
goto:getdxsdk
|
|
:setgxdkversion
|
|
set gxdkversion=?
|
|
set gxdkversionstr=unknown
|
|
set gxdkversionmm=?
|
|
set gxdkversionyyyy=?
|
|
set gxdkversionqfe=
|
|
set gxdkversioned=
|
|
set gxdkversionfull=?
|
|
if not exist "%gdkdir%\gxdk\gamekit\include\gxdk.h" goto:eof
|
|
pushd "%gdkdir%\gxdk\gamekit\include"
|
|
for /f "tokens=1,2,3,*" %%a in (gxdk.h) do if /i "%%a"=="#define" (
|
|
rem if /i "%%b"=="_GXDK_VER_STRING" set gxdkversionstr=%%c %%d
|
|
if /i "%%b"=="_GXDK_MM" call :setmonthgdk %%c
|
|
if /i "%%b"=="_GXDK_FULLYY" set gxdkversionyyyy=%%c
|
|
if /i "%%b"=="_GXDK_QFE_NUM" if not "%%c"=="0" set gxdkversionqfe= QFE %%c
|
|
if /i "%%b"=="_GXDK_VER" set gxdkversion=%%c
|
|
if /i "%%b"=="_GXDK_EDITION" set gxdkversioned=%%c
|
|
if /i "%%b"=="_GXDKVER_PRODUCTBUILDVER_FULL" set gxdkversionfull=%%c
|
|
)
|
|
popd
|
|
if "%gxdkversion%"=="?" goto:eof
|
|
if not "%gxdkversionfull%"=="?" set gxdkversion=%gxdkversioned%
|
|
if not "%gxdkversionmm%"=="?" set gxdkversionstr=%gxdkversionmm% %gxdkversionyyyy%%gxdkversionqfe%
|
|
set gxdkversion=%gxdkversion: =% (%gxdkversionstr:"=%)
|
|
if not "%gxdkversionfull%"=="?" set gxdkversion=%gxdkversion% or %gxdkversionfull%
|
|
goto:eof
|
|
|
|
:setmonthgdk
|
|
if "%1"=="01" set gxdkversionmm=January
|
|
if "%1"=="02" set gxdkversionmm=February
|
|
if "%1"=="03" set gxdkversionmm=March
|
|
if "%1"=="04" set gxdkversionmm=April
|
|
if "%1"=="05" set gxdkversionmm=May
|
|
if "%1"=="06" set gxdkversionmm=June
|
|
if "%1"=="07" set gxdkversionmm=July
|
|
if "%1"=="08" set gxdkversionmm=August
|
|
if "%1"=="09" set gxdkversionmm=September
|
|
if "%1"=="10" set gxdkversionmm=October
|
|
if "%1"=="11" set gxdkversionmm=November
|
|
if "%1"=="12" set gxdkversionmm=December
|
|
goto:eof
|
|
|
|
:getdxsdk
|
|
set dxsdkdir=%DXSDK_DIR%
|
|
call :setdxsdkversion
|
|
echo.&&echo Current DirectX SDK version:
|
|
echo. %dxsdkversion%
|
|
echo.&&echo ================
|
|
goto:getwinsdkinfo
|
|
:setdxsdkversion
|
|
set dxsdkversion=?
|
|
if not exist "%dxsdkdir%\include\dxsdkver.h" goto:eof
|
|
pushd "%dxsdkdir%\include"
|
|
for /f "tokens=1,2,3" %%a in (dxsdkver.h) do if /i "%%a"=="#define" (
|
|
if /i "%%b"=="_DXSDK_PRODUCT_MAJOR" set dxsdkversion=%%c
|
|
if /i "%%b"=="_DXSDK_PRODUCT_MINOR" set dxsdkversion2=%%c
|
|
if /i "%%b"=="_DXSDK_BUILD_MAJOR" set dxsdkversion3=%%c
|
|
if /i "%%b"=="_DXSDK_BUILD_MINOR" set dxsdkversion4=%%c
|
|
)
|
|
popd
|
|
if "%dxsdkversion%"=="?" goto:eof
|
|
set dxsdkdir=!dxsdkdir:%PROGRAMFILES(X86)%=!
|
|
set dxsdkdir=!dxsdkdir:%PROGRAMFILES%=!
|
|
set dxsdkdir=%dxsdkdir:Microsoft DirectX SDK =%
|
|
set dxsdkversion=%dxsdkversion%.%dxsdkversion2%.%dxsdkversion3%.%dxsdkversion4% %dxsdkdir:\=%
|
|
goto:eof
|
|
|
|
:getwinsdkinfo
|
|
set winsdkdir=%PROGRAMFILES(X86)%\windows kits
|
|
if exist "c:\windows kits" set winsdkdir=c:\windows kits
|
|
call :setwinsdkversion
|
|
echo.&&echo Current (default) Windows SDK version:
|
|
echo. %winsdkversion%
|
|
echo.&&echo Available Windows SDK versions on this PC:
|
|
pushd "%PROGRAMFILES%\microsoft sdks\windows"
|
|
for /d %%k in (v6*) do set wsdkver=%%k&&echo. !wsdkver:v=!
|
|
popd
|
|
pushd "%PROGRAMFILES(X86)%\windows kits"
|
|
for /d %%k in (7*) do echo. %%k
|
|
for /d %%k in (8*) do echo. %%k
|
|
popd
|
|
pushd %winsdkdir%
|
|
if exist "10\include" cd "10\include"
|
|
for /d %%k in (10*) do echo. %%k
|
|
popd
|
|
echo.&&echo ================
|
|
goto:getyetiinfo
|
|
:setwinsdkversion
|
|
set winsdkversion=?
|
|
if exist "%winsdkdir%\10" (
|
|
pushd "!winsdkdir!\10"
|
|
for /f "tokens=1,* delims== " %%p in (sdkmanifest.xml) do if /i "%%p"=="platformidentity" set winsdkversion=%%~q
|
|
popd
|
|
)
|
|
if "!winsdkversion!"=="" set winsdkversion=?
|
|
set winsdkversion=!winsdkversion: =!
|
|
set winsdkversion=!winsdkversion:"=!
|
|
set winsdkversion=!winsdkversion:uap,version=!
|
|
if "%winsdkversion:~0,1%"=="=" set "winsdkversion=!winsdkversion:~1!"
|
|
goto:eof
|
|
|
|
:getyetiinfo
|
|
if "%GGP_SDK_PATH%"=="" goto:doneyeti
|
|
if not exist "%GGP_SDK_PATH%" goto:doneyeti
|
|
pushd "%GGP_SDK_PATH%"
|
|
set YETI_SDK_VERSION=
|
|
for /f "tokens=1,*" %%v in (VERSION) do if "!YETI_SDK_VERSION!"=="" set YETI_SDK_VERSION=%%v
|
|
echo.&&echo Current (default) GGP/Stadia SDK version:
|
|
echo. %YETI_SDK_VERSION%
|
|
echo.&&echo ================
|
|
popd
|
|
:doneyeti
|
|
|
|
:getvsinfo
|
|
echo.
|
|
set hasvs=
|
|
for %%v in (8.0 9.0 10.0 11.0 12.0 14.0 15.0 16.0 17.0) do (
|
|
reg query HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\%%v >nul 2>&1
|
|
if !errorlevel!==0 (
|
|
set hasvs=y
|
|
) else (
|
|
if exist "%PROGRAMFILES(X86)%\Microsoft Visual Studio %%v\Common7\IDE\devenv.exe" set hasvs=y
|
|
))
|
|
|
|
if "%hasvs%"=="" (
|
|
for %%v in (2012 2015 2017 2019) do (
|
|
if exist "%PROGRAMFILES(X86)%\Microsoft Visual Studio\%%v\Professional\Common7\IDE\devenv.exe" set hasvs=y
|
|
))
|
|
|
|
if "%hasvs%"=="" echo Visual Studio not installed.&&goto:donevs
|
|
echo Installed Visual Studio versions:
|
|
echo.
|
|
for %%v in ("8.0 2005" "9.0 2008" "10.0 2010" "11.0 2012" "12.0 2013" "14.0 2015" "15.0 2017" "16.0 2019" "17.0 2022") do call :checkonvs %%~v
|
|
:donevs
|
|
|
|
reg query HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Xoreax\IncrediBuild\Builder >nul 2>&1
|
|
set errlev=!errorlevel!
|
|
echo.&&echo ================
|
|
echo.
|
|
if not !errlev!==0 echo Incredibuild not installed.&&goto:doneib
|
|
echo Incredibuild info:
|
|
set ibcoord=
|
|
call :showibinfo Builder VersionText "Installed version"
|
|
call :showibinfo BuildService CoordHost "Coordinator" setvar ibcoord
|
|
if not "%ibcoord%"=="" (
|
|
set ibnetadr4=?.?.?.?&&for /f "usebackq tokens=2 delims=[]" %%a in (`ping -4 -a -n 1 %ibcoord% ^| findstr [`) do set ibnetadr4=%%a
|
|
set ibnetname=?&&for /f "usebackq tokens=2 delims=. " %%a in (`ping -4 -a -n 1 !ibnetadr4! ^| findstr [`) do if "!ibnetname!"=="?" set ibnetname=%%a
|
|
echo. Coord details: !ibnetadr4! [!ibnetname!]
|
|
)
|
|
call :showibinfo BuildService Group "Group"
|
|
call :showibinfo BuildService AgentDescription "Description"
|
|
call :showibinfo BuildService MaxConcurrentBuilds "Concurrent builds"
|
|
call :showibinfo BuildService MinLocalCoresPerBuild "Min local cores"
|
|
call :showibinfo Builder ForceCPUCount_WhenInitiator "Initiator cores" zeroall
|
|
call :showibinfo Builder ForceCPUCount_WhenHelper "Helper cores" zeroall
|
|
call :showibinfo Builder MaxHelpers "Max cores" zeroall
|
|
call :showibinfo Builder DetectedCoreCount "Cores detected"
|
|
echo. Cores available: %NUMBER_OF_PROCESSORS% (%PROCESSOR_REVISION%:%PROCESSOR_IDENTIFIER%)
|
|
call :showibinfo Builder HelperTimeoutSec "Helper timeout"
|
|
call :showibinfo Builder TerminateInactiveHelper "Kill inactive helpers" yesno
|
|
call :showibinfo Builder AllowDoubleTargets "Restart locally" yesno
|
|
call :showibinfo Builder AvoidLocalExec "Avoid local" yesno
|
|
call :showibinfo Builder OnlyFailLocally "Only fail locally" yesno
|
|
call :showibinfo Builder Standalone "Standalone mode" yesno
|
|
call :showibinfo Builder PredictedExecutionMode "Predicted exec mode" yesno
|
|
call :showibinfo Builder AllowParallelCustomSteps "Parallel custom steps" yesno
|
|
call :showibinfo Builder CustomStepVs10Support "Special custom steps" yesno
|
|
call :showibinfo Builder UseMSBuild "Use MSBuild" yesno
|
|
call :showibinfo Builder MSBuildMaxInstances "Max MSBuild inst"
|
|
call :showibinfo Builder ClangPathConvert "Clang path type"
|
|
call :showibinfo Builder MaxConcurrentPDBs "Max concurrent PDBs"
|
|
echo.
|
|
set ibpath=
|
|
for /f "usebackq tokens=1,2*" %%v in (`reg query HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Xoreax\IncrediBuild\Builder /v Folder`) do if !errorlevel!==0 if /i "%%v"=="Folder" set ibpath=%%x
|
|
if "%ibpath%"=="" goto:doneib
|
|
if not exist "%ibpath%" goto:doneib
|
|
set ibpkg=
|
|
for /f "usebackq delims=" %%a in (`"%ibpath%\BuildConsole.exe" /querylicense`) do (
|
|
if /i "%%a"=="packages installed:" set ibpkg=8
|
|
if not "!ibpkg!"=="" echo %%a
|
|
)
|
|
goto:doneib
|
|
:showibinfo
|
|
set ibval=
|
|
for /f "usebackq tokens=1,2*" %%v in (`reg query HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Xoreax\IncrediBuild\%~1 /v %~2 2^>^&1`) do if !errorlevel!==0 if /i "%%v"=="%~2" set ibval=%%x
|
|
if "!ibval!"=="" goto:eof
|
|
if /i "%~4"=="setvar" set %~5=!ibval!
|
|
if /i "%~4"=="yesno" (
|
|
if "!ibval!"=="0" (set ibval=no) else (set ibval=yes [!ibval!])
|
|
) else if /i "%~4"=="zeroall" if "!ibval!"=="0" set ibval=all
|
|
set ibkey= %~3
|
|
echo !ibkey:~-24!: !ibval!
|
|
)
|
|
goto:eof
|
|
:doneib
|
|
|
|
:doneall
|
|
echo.&&echo ================
|
|
echo.
|
|
::if /i not "%1"=="-nopause" pause
|
|
goto:eof
|
|
|
|
:checkonvs
|
|
reg query HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\%1 >nul 2>&1
|
|
if !errorlevel!==0 ( reg query HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\%1_Config\SplashInfo /v EnvVersion >nul 2>&1
|
|
if !errorlevel!==0 ( for /f "usebackq tokens=1,2*" %%v in (`reg query HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\%1_Config\SplashInfo /v EnvVersion`) do if !errorlevel!==0 if /i "%%v"=="EnvVersion" echo Visual Studio %2 Version %%x
|
|
) else ( reg query HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\%1\Profile /v BuildNum >nul 2>&1
|
|
if !errorlevel!==0 ( for /f "usebackq tokens=1,2*" %%v in (`reg query HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\%1\Profile /v BuildNum`) do if !errorlevel!==0 if /i "%%v"=="BuildNum" echo Visual Studio %2 Version %%x
|
|
) else ( call :checkvsfiles %*
|
|
))) else ( call :checkvsfiles %* )
|
|
goto:eof
|
|
|
|
:checkvsfiles
|
|
set vspath=%PROGRAMFILES(X86)%\Microsoft Visual Studio\%2\Professional
|
|
if not exist "%vspath%" set vspath=%PROGRAMFILES(X86)%\Microsoft Visual Studio %1
|
|
if not exist "%vspath%\Common7\IDE\devenv.exe" goto:eof
|
|
if not exist "%vspath%\Common7\IDE\devenv.isolation.ini" (
|
|
set testver=
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!vspath:\=\\!\\Common7\\IDE\\devenv.exe" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown version]
|
|
echo Visual Studio %2 !testver!
|
|
goto:eof
|
|
)
|
|
set vsver=
|
|
pushd "%vspath%\Common7\IDE"
|
|
for /f "tokens=1,2* delims==" %%u in (devenv.isolation.ini) do (if /i "%%u"=="semanticversion" set vsver= v%%v)
|
|
popd
|
|
if not "!vsver!"=="" set vsver=!vsver:+= [!]
|
|
echo Visual Studio %2!vsver!
|
|
call :checkvsi %* "%vspath%"
|
|
call :checkxbvsi %* "%vspath%"
|
|
call :checkibvsi %* "%vspath%"
|
|
call :checkts %* "%vspath%"
|
|
goto:eof
|
|
|
|
:checkts
|
|
if exist "%~3\VC\Tools\MSVC" (
|
|
echo. Toolsets present
|
|
pushd "%~3\VC\Tools\MSVC"
|
|
for /d %%d in (*) do if exist "%%d\bin\Hostx64\x64\cl.exe" echo. %%d
|
|
popd
|
|
)
|
|
goto:eof
|
|
|
|
:checkvsi
|
|
if exist "%~3\Common7\IDE\Extensions\SCE\SceVSI\SceVSI.dll" (
|
|
set testver=
|
|
set "vsifile=%~3\Common7\IDE\Extensions\SCE\SceVSI\SceVSI.dll"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!vsifile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
call:cleantestver !testver!
|
|
echo. SCE VSI: !testver!
|
|
) else echo. SCE VSI: [not installed]
|
|
|
|
if exist "%~3\Common7\IDE\Extensions\SCE\Debugger Extensions\SIEDebuggerPackage.dll" (
|
|
set testver=
|
|
set "vsifile=%~3\Common7\IDE\Extensions\SCE\Debugger Extensions\SIEDebuggerPackage.dll"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!vsifile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
call:cleantestver !testver!
|
|
echo. SCE debugger: !testver!
|
|
) else echo. SCE debugger: [not installed]
|
|
|
|
if exist "%~3\Common7\IDE\Extensions\SCE\Prospero Debugger Extensions\ProsperoDebuggerPackage.dll" (
|
|
set testver=
|
|
set "vsifile=%~3\Common7\IDE\Extensions\SCE\Prospero Debugger Extensions\ProsperoDebuggerPackage.dll"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!vsifile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
call:cleantestver !testver!
|
|
echo. PS5 debugger: !testver!
|
|
) else echo. PS5 debugger: [not installed]
|
|
|
|
if exist "%~3\Common7\IDE\Extensions\SCE\Prospero\Razor\ProsperoRazorVSPlugin.dll" (
|
|
set testver=
|
|
set "vsifile=%~3\Common7\IDE\Extensions\SCE\Prospero\Razor\ProsperoRazorVSPlugin.dll"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!vsifile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
call:cleantestver !testver!
|
|
echo. PS5 Razor: !testver!
|
|
) else echo. PS5 Razor: [not installed]
|
|
|
|
goto:eof
|
|
|
|
:checkxbvsi
|
|
if exist "%~3\Common7\IDE\Extensions" (
|
|
pushd "%~3\Common7\IDE\Extensions"
|
|
set gdkvsipath=
|
|
for /f "usebackq tokens=*" %%a in (`dir /s /b Microsoft.Gaming.Xbox.dll 2^>nul`) do if "!gdkvsipath!"=="" set gdkvsipath=%%a
|
|
if exist "!gdkvsipath!" (
|
|
set testver=
|
|
set "vsifile=!gdkvsipath!"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!vsifile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
call:cleantestver !testver!
|
|
echo. GDK VSI: !testver!
|
|
) else echo. GDK VSI: [not installed]
|
|
popd )
|
|
goto:eof
|
|
|
|
:checkibvsi
|
|
if exist "%~3\Common7\IDE\Extensions\IncredibuildExtension\IncredibuildMenu.dll" (
|
|
set testver=
|
|
set "vsifile=%~3\Common7\IDE\Extensions\IncredibuildExtension\IncredibuildMenu.dll"
|
|
for /f "usebackq tokens=1,2 delims==" %%a in (`wmic datafile where name^="!vsifile:\=\\!" get version /value`) do if /i "%%a"=="version" set testver=%%b
|
|
if "!testver!"=="" set testver=[unknown]
|
|
call:cleantestver !testver!
|
|
echo. IB VSI: !testver!
|
|
) else echo. IB VSI: [not installed]
|
|
goto:eof
|
|
|
|
:cleantestver
|
|
set testver=%~1
|
|
goto:eof
|
|
|
|
:getvsiver
|
|
if "%~1"=="" set vsiver=unknown&&goto:eof
|
|
if /i "%~1"=="version" set vsiver=v%~2&&goto:eof
|
|
shift
|
|
goto:getvsiver
|
|
|
|
:getprojbranch
|
|
if "%RS_PROJECT%"=="" set RS_PROJECT=%~2
|
|
if "%RS_BRANCH%"=="" set RS_BRANCH=%~4
|
|
goto:eof |