::echo off

@echo off
setlocal
for /f "tokens=4-5 delims=. " %%i in ('ver') do set VERSION=%%i.%%j

if "%version%" == "6.1" (
if exist "%windir%\sysnative\pnputil.exe" (
    start "STM32 USB DFU DRIVER" %windir%\sysnative\pnputil.exe -i -a  %0\..\DriverNotSigned\DFU_in_HS_Mode.inf
) else (
    start "STM32 USB DFU DRIVER" pnputil -i -a  %0\..\DriverNotSigned\DFU_in_HS_Mode.inf
)
) else (
if exist "%windir%\sysnative\pnputil.exe" (
    start "STM32 USB DFU DRIVER" %windir%\sysnative\pnputil.exe -i -a  %0\..\Driver\STM32Bootloader.inf
) else (
    start "STM32 USB DFU DRIVER" pnputil -i -a  %0\..\Driver\STM32Bootloader.inf
)
)
endlocal


@echo off
REM If enough rights, check the machine architecture
if /I "%PROCESSOR_ARCHITECTURE%"=="AMD64" goto AMD64
REM If here, we are running a 32-bit version of cmd; but still may be on a 64-bit machine
if /I "%PROCESSOR_ARCHITEW6432%"=="AMD64" goto AMD64
start "" "%~dp0/dpinst_x86.exe"
goto END

:AMD64
start "" "%~dp0/dpinst_amd64.exe"

:END