Admin check
Pour vérifier rapidement si le compte à les droit d'administrateur.
@echo on & @echo off
cls
REM
REM Script d'installation silencieuse
REM
REM O.Brizard @2021
REM
REM Parametre d'installation silencieuse
set silentParams=/silent /loadinf="foxitSilent.inf"
set uninstallCmd=
REM compte de montage
set login=monLogin
set pwd=monPwd
REM R‚pertoire source du logiciel
set fullPath="%~dp0"
set fullPath=%fullPath:~-0,-2%"
if NOT %1=="" set fullPath=%1
if NOT %1=="" set fullPath=%fullPath:~-0,-1%"
set srcFolder=%fullPath%
REM Source local
if NOT "%srcFolder:~1,2%"=="\\" goto next
REM On monte le serveur
if exist g:\ net use /delete g: /y>nul 2>&1
echo | set /p =Montage du partage r‚seau:
net use g: %srcFolder% /persistent:no
if errorlevel 2 (
net use g: %srcFolder% /user:%login% %pwd% /persistent:no
)
if not exist g: exit 1
:next
REM Recupere le nom du repertoire source du logiciel
set fullPathTmp=%fullPath:&=^&%
set fullPathTmp=%fullPathTmp:\=,%
for %%a in (%fullPathTmp:"=%) do set pFolder=%%a
set nomRepertoireLogiciel=%pFolder%
REM SI BESOIN D'ETRE SUPER Administrateur
REM *************************************
:init
setlocal DisableDelayedExpansion
set "batchPath=%~nx0"
for %%k in (%0) do set batchName=%%~nk
set "vbsGetPrivileges=%TMP%\OEgetPriv_%batchName%.vbs"
setlocal EnableDelayedExpansion
:checkPrivileges
net session 1>NUL 2>NUL
if '%errorlevel%' == '0' ( goto gotPrivileges ) else ( goto getPrivileges )
:getPrivileges
if '%1'=='ELEV' (shift /1 & goto gotPrivileges)
ECHO Set UAC = CreateObject^("Shell.Application"^)> "%vbsGetPrivileges%"
ECHO args = "ELEV ">> "%vbsGetPrivileges%"
ECHO For Each strArg in WScript.Arguments>> "%vbsGetPrivileges%"
ECHO args = args ^& strArg ^& " ">> "%vbsGetPrivileges%"
ECHO Next>> "%vbsGetPrivileges%"
ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1>> "%vbsGetPrivileges%"
"%SystemRoot%\System32\WScript.exe" "%vbsGetPrivileges%" %*
exit /B
:gotPrivileges
if exist "%vbsGetPrivileges%" del /Q "%vbsGetPrivileges%"
setlocal
if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul & shift /1)
REM *********** Fin admin **************************
::::::::::::::::::::::::::::
:: START
::::::::::::::::::::::::::::
TITLE Installation de %nomRepertoireLogiciel%
echo Installation de %nomRepertoireLogiciel% patientez...
echo.
pushd G:\
REM On determine le nom du setup
set _setup=
for /F "tokens=*" %%A in ('dir /b *^| findstr /i /r "\.msi$ \.exe$"') DO set _setup=%%A && set ext=%%~xA
if "%_setup%"=="" goto end
REM Si besoin d'ajout de certificat
REM certutil.exe -addstore TrustedPublisher monCertificat.cer
REM Désintallation avant si besoin
if NOT "%uninstallCmd%"=="" cmd.exe /c %uninstallCmd%
timeout /T 3> nul
REM Execution de l'installation
echo D‚but de l'installation.
if "%_setup:~-1%"==" " set _setup=%_setup:~-0,-1%
if "%ext%"==".msi" msiexec.exe /i "%_setup%" %silentParams% && set exitCode=%errorlevel%
if "%ext%"==".exe" "%_setup%" %silentParams% && set exitCode=%errorlevel%
REM ::::: Post installation :::::
REM :::::::::::::::::::::::::::::
::regedit.exe /s titi.reg
::reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v ADS_LICENSE_FILE /t REG_SZ /d 32000@mon-srv.toto.fr /f>nul 2>&1
:end
popd
echo | set /p=Fin d'installation:
net use /delete g: /Y
echo.
if "%_setup%"=="" exit 1
REM Controle du succes d'installation si besoin
::if not exist "C:\Program Files (x86)\Microchip\MPLABX\v5.40\mplab_platform\bin\mplab_ide64.exe" set exitCode=1
exit %exitCode%
Dernière modification : le 2022/01/25
