Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
@REM ----------------------------------------------------------------- @REM @REM supporttools.cmd - ClarkG @REM create the suppport tools cab @REM @REM Copyright (c) Microsoft Corporation. All rights reserved. @REM @REM ----------------------------------------------------------------- @if defined _CPCMAGIC goto CPCBegin @perl -x "%~f0" %* @goto :EOF #!perl use strict; use lib $ENV{RAZZLETOOLPATH} . "\\PostBuildScripts"; use lib $ENV{RAZZLETOOLPATH}; use PbuildEnv; use ParseArgs;
sub Usage { print<<USAGE; exit(1) } supporttools [-l <language>]
Create the support tools cab. USAGE
parseargs('?' => \&Usage);
# *** TEMPLATE CODE *** $ENV{"_CPCMAGIC"}++;exit(system($0)>>8); __END__ @:CPCBegin @set _CPCMAGIC= @setlocal ENABLEDELAYEDEXPANSION ENABLEEXTENSIONS @if not defined DEBUG echo off @REM *** CMD SCRIPT BELOW ***
REM REM Check for the working folder REM if NOT EXIST %_NTPostBld%\dump\supporttools ( call errmsg.cmd "%_NTPostBld%\dump\supporttools does not exist; unable to create support.cab." goto end ) cd /d %_NTPostBld%\dump\supporttools if errorlevel 1 ( goto end )
REM REM Support Tools: check whether the ddf is there REM if NOT exist suptools.ddf ( call errmsg.cmd "Unable to find suptools.ddf." goto end )
REM REM Support Tools: Generate the suppport.cab cabinet REM if exist support.cab call ExecuteCmd.cmd "del /f support.cab" if errorlevel 1 ( call errmsg.cmd "Error deleting old support.cab." goto end ) call ExecuteCmd.cmd "makecab /D SourceDir=%_NTPOSTBLD% /F suptools.ddf" if errorlevel 1 ( call errmsg.cmd "Error generating support.cab." goto end )
REM REM Support Tools: check whether the msi database is there for the updating REM if NOT exist suptools.msi ( call errmsg.cmd "Unable to find suptools.msi." goto end )
REM REM Support Tools: check whether WiStream.vbs is present REM if NOT exist WiStream.vbs ( call errmsg.cmd "Unable to find WiStream.vbs ." goto end )
REM REM Support Tools: check whether the CA dll is present REM if NOT exist %_NTPostBld%\reskit\bin\suptools.dll ( call errmsg.cmd "Unable to find suptools.dll ." goto end )
REM REM Support Tools: Stream the Suptools.dll into the Binary table REM call ExecuteCmd.cmd "WiStream.vbs suptools.msi %_NTPostBld%\reskit\bin\suptools.dll Binary.SupToolsDll" if errorlevel 1 ( call errmsg.cmd "Error updating Binary table." goto end )
REM REM SetBldno REM set ntverp=%_ntbindir%\public\sdk\inc\ntverp.h if not exist %ntverp% ( call errmsg.cmd "File %ntverp% not found." goto end )
set bldno= for /f "tokens=6" %%i in ('findstr /c:"#define VER_PRODUCTBUILD " %ntverp%') do ( set bldno=%%i )
if "%bldno%" == "" ( call errmsg.cmd "Unable to define bldno per %ntverp%" goto end )
REM REM Update the 'ProductVersion' property in the msi with the current build REM call ExecuteCmd.cmd "cscript.exe updversn.vbs suptools.msi %bldno%" if errorlevel 1 ( call errmsg.cmd "Error updating Property table." goto end )
REM REM Support Tools: create a 'cabtemp' folder to extract the cab files. REM call ExecuteCmd.cmd "if not exist cabtemp md cabtemp" if errorlevel 1 ( goto end )
REM REM Support Tools: check whether the cab is present. REM if NOT exist support.cab ( call errmsg.cmd "Unable to find support.cab." goto end )
REM REM Support Tools: extract the cabs REM call ExecuteCmd.cmd "extract.exe /y /e /l cabtemp support.cab" if errorlevel 1 ( goto end )
REM REM Support Tools: Use msifiler to update the msi database with the cab contents. REM call ExecuteCmd.cmd "msifiler.exe -d suptools.msi -s cabtemp\" if errorlevel 1 ( popd goto end )
REM REM Support Tools: Remove the cabtemp folder as it is not needed. REM call ExecuteCmd.cmd "rd /q /s cabtemp"
REM REM Copy msi to destination REM call ExecuteCmd.cmd "copy /Y suptools.msi %_NTPostBld%\support\tools\" if errorlevel 1 ( goto end ) call ExecuteCmd.cmd "copy /Y support.cab %_NTPostBld%\support\tools\" if errorlevel 1 ( goto end )
call logmsg.cmd "Whistler Support Tools Cabgen completed successfully."
popd
goto end
:end seterror.exe "%errors%"& goto :EOF
|