nx-installation_projects_vi.../Daten/_InstallNX.cmd

285 lines
11 KiB
Batchfile

@echo OFF
echo.
echo ******************************************************************
echo ** **
echo **** Install NX ****
echo ** **
echo ******************************************************************
echo * V 1.0 *
echo ******************************************************************
echo * (C) 2011 by Eugen HOEGLINGER *
echo ******************************************************************
echo * Installation of NX including newest Release- and Maintenance- *
echo * Packs. Set default Open-Type of NX-Part Files to open with *
echo * this NX version. *
echo ******************************************************************
echo * init 2011-02-23 E. Hoeglinger
echo *
echo ******************************************************************
echo. & echo.
if not exist "C:\TMP" (mkdir "C:\TMP")
rem --- Set NX Variables -------------------------------------------------------
set UGII_BASE_DIR=%ProgramFiles%\UGS\NX %NX_LONG_VERSION%
set UGII_ROOT_DIR=%UGII_BASE_DIR%\UGII\
set UGII_LANG=ENGLISH
set UGII_TMP_DIR=C:\TMP
set NX_INSTALL_LOGFILE=%ProgramFiles%\UGS\Logfiles\NX%NX_VERSION%_Install.log
set NX_INSTALL_DOC_LOGFILE=%ProgramFiles%\UGS\Logfiles\NX%NX_VERSION%_Doc_Install.log
set UGTOOLS_INSTALL_DIR="%ProgramFiles%\UGS"
rem ** Converted Variables **
set NX_VERSION=%NX_LONG_VERSION:~0,-2%
set NX_SHORT_VERSION=%NX_LONG_VERSION:.=%
if /I %NX_VERSION% LSS 10 (set NX_SHORT0_VERSION=0%NX_SHORT_VERSION%) else (set NX_SHORT0_VERSION=%NX_SHORT_VERSION%)
rem echo NX Version: %NX_LONG_VERSION%
rem echo NX Version (Base version): %NX_VERSION%
rem echo NX Verson (Short version): %NX_SHORT_VERSION%
rem echo NX Version (Short 0 version): %NX_SHORT0_VERSION%
rem echo Location: %LOCATION%
rem echo NX_VAI folder location: %NX_VAI_ONLINE%
rem echo License server: %UGS_LICENSE_SERVER%
rem echo License bundle: %UGS_LICENSE_BUNDLE%
rem echo Default Regfile: %DEFAULT_REGFILE%
rem echo UGII_BASE_DIR: %UGII_BASE_DIR%
rem echo UGII_ROOT_DIR; %UGII_ROOT_DIR%
rem echo Language: %UGII_LANG%
rem echo UGII_TMP_DIR: %UGII_TMP_DIR%
rem echo NX Installation Logfile: %NX_INSTALL_LOGFILE%
rem echo NX Doc Installation Logfile: %NX_INSTALL_DOC_LOGFILE%
rem echo UG Tools Installation directory: %UGTOOLS_INSTALL_DIR%
pause
rem --- Create logfile folders, if they does not exist ---
if not exist "%ProgramFiles%\UGS" (mkdir "%ProgramFiles%\UGS")
if not exist "%ProgramFiles%\UGS\Logfiles" (mkdir "%ProgramFiles%\UGS\Logfiles")
rem --- Dokumentation ----------------------------------------------------------
rem --- STANDALONE = With Dokumentation ---
rem --- NETWORK = Without Dokumentation --- **
if /I [%DOKUMENTATION%]==[STANDALONE] goto set_INSTALLTYPE_STANDALONE
if /I [%DOKUMENTATION%]==[NETWORK] goto set_INSTALLTYPE_NETWORK
goto set_INSTALLTYPE_STANDALONE
:set_INSTALLTYPE_NETWORK
set INSTALLATION_TYPE=NETWORK
set INSTALL_DOCUMENTATION=FALSE
set COPY_UGTOOLS=FALSE
echo Doku wird nicht installiert
goto set_INSTALL_PATHS
:set_INSTALLTYPE_STANDALONE
set INSTALLATION_TYPE=STANDALONE
set INSTALL_DOCUMENTATION=TRUE
set COPY_UGTOOLS=FALSE
echo Doku wird installiert
goto set_INSTALL_PATHS
rem ---Installation Paths ------------------------------------------------------
:set_INSTALL_PATHS
set NXUpdateApp=%STARTUP_FOLDER%\NXupdate\NXupdate.exe
rem --- set installed NX to default open type ---
set set_NX_TO_DEFAULT=TRUE
set DefaultOpenTypeReg=%DEFAULT_REGFILE%
rem *******************************************************************
rem ** set NX-Portal Installation **
rem ** **
rem ** Group: 1 - Gast 3 - Hauptanwender **
rem ** 2 - Anwender 4 - Administrator **
rem ** **
set INSTALL_NX_PORTAL=TRUE
if /i "%NXPortalGroup%" == "" set NXPortalGroup=2
set NXPortalInstaller=%STARTUP_FOLDER%\NX-Portal\%LOCATION%\Install_NX-Portal.bat
rem --- In Linz create an installation logfile ---
if /I [%LOCATION%]==[Linz] set NX_INSTALLSCRIPT_LOG=\\atlnztfile01.ww300.siemens.net\ber600\ISS4\NX_Installation\NX%NX_VERSION%\InstallationNX%NX_VERSION%.txt
rem --- Get Mode and set paths (32bit or 64bit) ---
if /I %PROCESSOR_ARCHITECTURE%==x86 (goto set_32BIT)
if /I %PROCESSOR_ARCHITECTURE%==AMD64 (goto set_64BIT) else (goto ARCHITECTURE_DETECTION_FAILED)
:set_32BIT
rem --- If the script on a 64 bit machine are started from a 32 bit application,
rem than the 64 bit environments are not recognized correctly. To be sure,
rem questioning a special Windows system variable. ---
if /I [%PROCESSOR_ARCHITEW6432%]==[AMD64] (goto set_64BIT)
set MACHINE=32BIT
set COMPSOLV_MACHINE=32bit
set NX_MSI=%STARTUP_FOLDER%\NXupdate\NX%NX_VERSION%_32bit-updates\basis_nx%NX_SHORT_VERSION%-32bit\nx%NX_SHORT0_VERSION%\UGS NX %NX_LONG_VERSION%.msi
set NX_DOC_MSI=%STARTUP_FOLDER%\NXupdate\NX%NX_VERSION%_64bit-updates\basis_nx%NX_SHORT_VERSION%-ugdoc\win32\ugdoc%NX_SHORT0_VERSION%\UGS NX %NX_LONG_VERSION% Documentation.msi
set UGTools_Dir=%STARTUP_FOLDER%\UGTools\NX%NX_VERSION%_32bit
goto CHECK_FILES
:set_64BIT
set MACHINE=64BIT
set COMPSOLV_MACHINE=64bit
set NX_MSI=%STARTUP_FOLDER%\NXupdate\NX%NX_VERSION%_64bit-updates\basis_nx%NX_SHORT_VERSION%-64bit\nx%NX_SHORT0_VERSION%\UGS NX %NX_LONG_VERSION%.msi
set NX_DOC_MSI=%STARTUP_FOLDER%\NXupdate\NX%NX_VERSION%_64bit-updates\basis_nx%NX_SHORT_VERSION%-ugdoc\win64\ugdoc%NX_SHORT0_VERSION%\UGS NX %NX_LONG_VERSION% Documentation.msi
set UGTools_Dir=%STARTUP_FOLDER%\UGTools\NX%NX_VERSION%_64bit
goto CHECK_FILES
rem --- Consistency Check ------------------------------------------------------
:CHECK_FILES
set CONTINUE=TRUE
:CHECK_NX_DEFAULT_REG
if /I not %set_NX_TO_DEFAULT%==TRUE (goto CHECK_NX_MSI_EXIST)
goto CHECK_NX_DEFAULT_REG_EXIST
:CHECK_NX_DEFAULT_REG_EXIST
if exist "%DefaultOpenTypeReg%" (goto CHECK_NX_MSI_EXIST)
echo Unable to access DefaultOpenTypeReg: %DefaultOpenTypeReg%
set CONTINUE=FALSE
:CHECK_NX_MSI_EXIST
if exist "%NX_MSI%" (goto CHECK_INSTALL_DOC)
echo Unable to access NX_MSI-Installer: %NX_MSI%
set CONTINUE=FALSE
:CHECK_INSTALL_DOC
if /I not %INSTALL_DOCUMENTATION%==TRUE (goto CHECK_NXUPDATE_EXIST)
:CHECK_NX_DOC_MSI_EXIST
if exist "%NX_DOC_MSI%" (goto CHECK_NXUPDATE_EXIST)
echo Unable to access NX %NX_LONG_VERSION% Documentation Msi-Installer: %NX_DOC_MSI%
set CONTINUE=FALSE
:CHECK_NXUPDATE_EXIST
if exist "%NXUpdateApp%" (goto CHECK_INSTALL_PORTAL)
echo Unable to access NXUpdate Application: %NXUpdateApp%
set CONTINUE=FALSE
:CHECK_INSTALL_PORTAL
if /I not %INSTALL_NX_PORTAL%==TRUE (goto CHECK_COPY_UGTOOLS)
:CHECK_PORTAL_INSTALL_EXIST
if exist "%NXPortalInstaller%" (goto CHECK_COPY_UGTOOLS)
echo Unable to access NX-Portal Installer: %NXPortalInstaller%
set CONTINUE=FALSE
:CHECK_COPY_UGTOOLS
if /I not "%COPY_UGTOOLS%"==TRUE (goto CHECK_CONTINUE)
:CHECK_UGTOOLS_EXIST
if exist "%UGTools_Dir%" (goto CHECK_CONTINUE)
echo Unable to access directory of UGTools: %UGTools_Dir%
set CONTINUE=FALSE
:CHECK_CONTINUE
if /I not %CONTINUE%==TRUE (goto END_WITHOUT_SUCCESS)
rem --- Summary ----------------------------------------------------------------
rem --- Print Summary of selected files ---
:PRINT_SUMMARY
echo.
echo Configuration-Type:
echo -------------------
echo Detected System: %MACHINE%
echo Installation-Type: %INSTALLATION_TYPE%
echo.
echo NX-Installation:
echo -----------------
echo NX Installer: %NX_MSI%
if /I %INSTALL_DOCUMENTATION%==TRUE (echo NX Documentation Installer: %NX_DOC_MSI%)
echo NX Update: %NXUpdateApp%
echo.
if /I [%set_NX_TO_DEFAULT%]==[TRUE] (
echo set default Open-Type:
echo ----------------------
echo set NX %NX_LONG_VERSION% as Default: %set_NX_TO_DEFAULT%
echo Add registry file: %DefaultOpenTypeReg%
echo.
)
if /I not %INSTALL_NX_PORTAL%==TRUE (goto SKIP_PORTAL_SUMMARY)
echo Install NX-Portal:
echo ------------------
if %NXPortalGroup%==1 echo Group: %NXPortalGroup% - GUEST
if %NXPortalGroup%==2 echo Group: %NXPortalGroup% - USER
if %NXPortalGroup%==3 echo Group: %NXPortalGroup% - KEYUSER
if %NXPortalGroup%==4 echo Group: %NXPortalGroup% - ADMINISTRATOR
echo Installation File: %NXPortalInstaller%
echo.
:SKIP_PORTAL_SUMMARY
if /I not %COPY_UGTOOLS%==TRUE (goto SKIP_UGTOOLS_SUMMARY)
echo NX UGTools:
echo -----------
echo UG Tools Directory: %UGTools_Dir%
echo Copy Tools to Directory: %UGTools_Install_Dir%
echo.
:SKIP_UGTOOLS_SUMMARY
rem pause
echo.
rem --- Install Routines -------------------------------------------------------
rem --- Install NX ---
:INSTALL_NX
echo Installing NX %NX_LONG_VERSION%...
msiexec.exe /i "%NX_MSI%" /passive /norestart /log "%NX_INSTALL_LOGFILE%" ADDLOCAL="all" setUPTYPE="typical" LICENSESERVER=%UGS_LICENSE_SERVER% LANGUAGE=%UGII_LANG% INSTALLDIR="%UGII_BASE_DIR%"
rem --- Install Dokumentation --- **
:INSTALL_NX_DOCUMENTATION
if not %INSTALL_DOCUMENTATION%==TRUE (goto UPDATE_NX)
echo Installing NX %NX_LONG_VERSION% Documentation...
msiexec.exe /i "%NX_DOC_MSI%" /passive /norestart /log "%NX_INSTALL_DOC_LOGFILE%" INSTALLDIR="%UGII_BASE_DIR%"
rem --- Start NX Update ---
:UPDATE_NX
echo Updating NX %NX_LONG_VERSION% with Release and Maintenance Pack...
CALL "%NXUpdateApp%" -autorun -ugii_base_dir="%UGII_BASE_DIR%"
rem --- set default Open-Type of NX-Part Files to open with the installed
rem NX Version ---
:set_DEFAULT_OPENTYPE
if /I not %set_NX_TO_DEFAULT%==TRUE (goto COPY_UGTOOLS_DIRECTORY)
echo set default Open-Type of Part files to open with NX %NX_LONG_VERSION%...
regedit.exe /s "%DefaultOpenTypeReg%"
rem --- Copy UGTools ---
:COPY_UGTOOLS_DIRECTORY
if /I not %COPY_UGTOOLS%==TRUE (goto INSTALL_NXPORTAL)
xcopy "%UGTOOLS_DIR%" "%UGTools_Install_Dir%" /E /Y
rem --- Install NX-Portal ---
:INSTALL_NXPORTAL
if /I not %INSTALL_NX_PORTAL%==TRUE (goto END_WITH_SUCCESS)
echo Installing NX-Portal...
CALL "%NXPortalInstaller%" %NXPortalGroup% /d
echo OFF
rem --- Additional NX Tools ---
rem Create a Shortcut for 'Zip Assembly' in 'NX Tools' Startmenu
if /I not exist %NX_VAI_ONLINE%\NX_VAI\NX_ENVIRONMENT\NX7\NX_APPS\COMPSOLV_TOOLS\tools\ZipAssembly (goto END_WITH_SUCCESS)
xcopy "%NX_VAI_ONLINE%\NX_VAI\NX_ENVIRONMENT\NX7\NX_APPS\COMPSOLV_TOOLS\tools\ZipAssembly\Zip Assembly.lnk" "%ALLUSERSPROFILE%\Start Menu\Programs\UGS NX %NX_LONG_VERSION%\NX Tools" /E /Y
goto END_WITH_SUCCESS
rem --- Errorhandling ----------------------------------------------------------
:ARCHITECTURE_DETECTION_FAILED
echo.
echo Unable to detect weather your system is running in 32bit or 64bit mode.
echo Installation abbortet without success.
goto END_WITHOUT_SUCCESS
:END_WITHOUT_SUCCESS
echo.
if /I [%LOCATION%]==[Linz] echo %USERNAME%;%COMPUTERNAME%;%PROCESSOR_ARCHITECTURE%;%USERDNSDOMAIN%;%TIME%;FAILED >> %NX_INSTALLSCRIPT_LOG%
echo Some errors occured during installation.
echo INSTALLATION FINISHED WITHOUT SUCCESS!
echo.
goto END
:END_WITH_SUCCESS
echo.
if /I [%LOCATION%]==[Linz] echo %USERNAME%;%COMPUTERNAME%;%PROCESSOR_ARCHITECTURE%;%USERDNSDOMAIN%;%TIME%;SUCCESS >> %NX_INSTALLSCRIPT_LOG%
echo INSTALLATION FINISHED SUCCESSFULLY!
echo.
goto END
:END
pause
rem --- End --------------------------------------------------------------------