|
rem NT/2000/XP KiXtart check for v. 4.02 If Exist %windir%\kix402.ok Goto bothOS problem no bothOS label to go to If Exist %windir%\kix32.exe Del %windir%\kix32.exe problem user can read, but can't delete if not an Admin on 2000/XP If Exist %windir%\system32\kix32.exe Del %windir%\system32\kix32.exe problem user can read, but can't delete if not an Admin on 2000/XP copy \\yeg01-nts-02\netlogon\tools\kix32.exe %windir%\. /Y > NUL problem if user not Admin, can't write here on 2000/XP @echo KiXtart v402: installation completed > %windir%\kix402.ok problem if user not Admin, can't write here on 2000/XP rem launch KiXtart interpreter for system logging info, registry setting, time sync %windir%\kix32.exe \\yeg01-nts-02\netlogon\yeg05.kix problem did not check if the file is there in %windir%, assumed it was there
This batch DOES NOT check if the user is an Admin either... but gives another example of how to copy the files locally.
@ECHO OFF CLS IF "%OS%" == "Windows_NT" GOTO Kix_WinNT IF NOT "%OS%" == "Windows_NT" GOTO Kix_Win9X :Kix_WinNT IF EXIST %windir%\kix402.ok GOTO Server ECHO Please wait... Updating the KiXtart program ECHO files on your system. This may take a few minutes... IF EXIST %windir%\kix32.exe DEL %windir%\kix32.exe IF EXIST %windir%\kx95.dll DEL %windir%\kx95.dll IF EXIST %windir%\kx16.dll DEL %windir%\kx16.dll IF EXIST %windir%\kx32.dll DEL %windir%\kx32.dll IF EXIST %windir%\system32\kix32.exe DEL %windir%\system32\kix32.exe IF EXIST %windir%\system32\kx95.dll DEL %windir%\system32\kx95.dll IF EXIST %windir%\system32\kx16.dll DEL %windir%\system32\kx16.dll IF EXIST %windir%\system32\kx32.dll DEL %windir%\system32\kx32.dll XCOPY %0\..\kix32.exe %windir%\. /H /I /R > NUL @echo KiXtart v4.02: installation completed > %windir%\kix402.ok GOTO Server :Kix_Win9X IF EXIST %windir%\kix402.ok GOTO Server ECHO Please wait... Updating the KiXtart program ECHO files on your system. This may take a few minutes... IF EXIST %windir%\kix32.exe DEL %windir%\kix32.exe IF EXIST %windir%\kx95.dll DEL %windir%\kx95.dll IF EXIST %windir%\kx16.dll DEL %windir%\kx16.dll IF EXIST %windir%\kx32.dll DEL %windir%\kx32.dll IF EXIST %windir%\system\kx95.dll DEL %windir%\system\kx95.dll IF EXIST %windir%\system\kx16.dll DEL %windir%\system\kx16.dll IF EXIST %windir%\system\kx32.dll DEL %windir%\system\kx32.dll XCOPY %0\..\kix32.exe %windir%\. /H /I /R > NUL XCOPY %0\..\kx16.dll %windir%\system\. /H /I /R > NUL XCOPY %0\..\kx32.dll %windir%\system\. /H /I /R > NUL XCOPY %0\..\kx95.dll %windir%\system\. /H /I /R > NUL @echo KiXtart v4.02: installation completed > %windir%\kix402.ok :Server @echo off REM ** BEGIN CHECK FOR DIAL-UP CONNECTION ** :CHECK_RAS CLS echo Please wait - Network authentication is being verified . . . ECHO. IF EXIST %WINDIR%\CHECKRAS.EXE GOTO LOCAL copy %0\..\CHECKRAS.EXE %WINDIR% GOTO LOCAL
:LOCAL %WINDIR%\CHECKRAS.EXE > nul IF ERRORLEVEL 1 GOTO SLOW GOTO NOT_RAS
:SLOW echo Please wait - Network authentication is being verified . . . echo. %windir%\Kix32.exe %0\..\kix32.exe DIALIN.kix GOTO END
REM ** END CHECK FOR DIAL-UP CONNECTION **
:NOT_RAS GOTO KIX
:KIX IF EXIST %windir%\Kix32.exe GOTO LOCALKIX %0\..\kix32.exe %0\..\login.kix GOTO END
:LOCALKIX @ECHO OFF IF NOT "%OS%" == "Windows_NT" GOTO LOCAL9X %windir%\Kix32.exe %0\..\login.kix GOTO END
:LOCAL9X @ECHO OFF IF EXIST %windir%\system\kx95.dll GOTO STEP1 %0\..\kix32.exe %0\..\login.kix GOTO END
:STEP1 IF EXIST %windir%\system\kx16.dll GOTO STEP2 %0\..\kix32.exe %0\..\login.kix GOTO END
:STEP2 IF EXIST %windir%\system32\kx32.dll GOTO STEP3 %0\..\kix32.exe %0\..\login.kix GOTO END
:STEP3 IF EXIST %windir%\kix32.exe GOTO STEP4 %0\..\kix32.exe %0\..\login.kix GOTO END
:STEP4 %windir%\Kix32.exe %0\..\login.kix GOTO END
:END
Here is another example of determining OS from batch
@ECHO OFF IF NOT "%OS%" == "Windows_NT" GOTO WIN9X VER|FIND /I "XP" >NUL && IF %ERRORLEVEL% EQU 0 GOTO XP IF not "%ALLUSERSPROFILE%" == "" GOTO WIN2K IF "%OS%" == "Windows_NT" GOTO NT4 GOTO END :XP ECHO Found Windows XP REM Or what ever command you want to run. GOTO END :WIN2K ECHO Found Windows 2000 REM Or what ever command you want to run. GOTO END :NT4 ECHO Found Windows NT 4 REM Or what ever command you want to run. GOTO END :WIN9X ECHO Found Windows 9x REM Or what ever command you want to run. GOTO END :END
|