285 lines
11 KiB
Batchfile
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 -------------------------------------------------------------------- |