Monday, May 12, 2008

Network Install script for Revit Architecture 2009 deployment

We have been using a script to install RAC 2009 for our custom install. I thought I would post it hoping it might be useful for others. (or others can find mistakes and make this better). Use this at your own risk.

  1. Do a typical Install of RAC2009 from DVD on one computer. Most of the steps outlined below are done in this computer.
  2. Copy all the relevant content from relevant folders in this computer to a network location like "z:\Revit\2009". (We copy
    imp templates; imp library from "C:\Documents and Settings\All Users\Application Data\Autodesk\RAC 2009";
    import / export settings, etc from "C:\Program Files\Revit Architecture 2009\Data"; ) etc.
  3. Copy and backup Revit.ini as revit.ini.default.
  4. Edit the revit.ini file directly (if you know what you are doing) or using the settings menu > options command, so that all the content is pointing to the network location. We prefer to leave the rendering library in individual boxes.; add paths in INI file to any other libraries as needed; Go to file menu in Revit and select shared parameters file, import/export settings, etc. Add paths, to API dlls etc. in the revit.ini. Open this revit.ini file and check if there is anything under [Partitions]. If there is, remove this section.
  5. Backup "C:\Program Files\Revit Architecture 2009\Program\keyboardshortcuts.txt" and then edit it using note pad to suit your office standards.
  6. You need to download separately "ArchitectureFamiliesImpENU.chm" and "TutorialsArchitectureImpENU.chm" from autodesk.
  7. When we create a network deployment, we set it to NOT install any content. Most of the content is accessed from the network. However, some content, settings is accessed from the local machine. So, we need to copy some files to every local machine (like Revit.ini; keyboardshortcuts.txt, etc.) after a typical network installation. We put all the files to be copied in one network folder, and run a script to do this.
  8. We copy all the customized content and settings from the computer where we had done the installation form the DVD to \\Ci-adv\apps\CADD\RVT2009\CI\copy . The following files / folders reside in this folder:
    "Data" folder has all contents of "C:\Program Files\Revit Architecture 2009\Data"
    "API" folder has all our DLLs, plugins, etc.
    "Training" folder has all the contents of "C:\Documents and Settings\All Users\Application Data\Autodesk\RAC 2009\Training"
    "Program" folder has the downloaded "ArchitectureFamiliesImpENU.chm" and "TutorialsArchitectureImpENU.chm"; the edited Revit.ini file and the edited keyboardshortcuts.txt file from "C:\Program Files\Revit Architecture 2009\Program"; and a dummy "patch.001" file. (this file is used to track future customizations, etc.)
    All these folders will be eventually copied to "C:\Program Files\Revit Architecture 2009" folder in individual boxes.
  9. The following is the edited version of the BATCH file we run to install. You can make changes as per your situation. Use this at your own risk. You can copy and paste the text below in a text file and save it with a BAT have to edit this to point to your server, etc. (shown in red color)

rem *************************

@echo off
rem location to our rac install link file, created by the network deployment wizard is here in the following example: \\Ci-adv\apps\CADD\RVT2009\ciuser32.lnk
rem this installation does NOT install any content. Most of the content reside on a network drive
echo install started... please wait
start "CI Revit Install" /wait \\Ci-adv\apps\CADD\RVT2009\AdminImage\Setup.exe /I \\Ci-adv\apps\CADD\RVT2009\AdminImage\ciuser32.ini
echo install started... please wait
echo After Revit Installation is complete,
@echo on
REM rename out of the box files
rename "C:\Program Files\Revit Architecture 2009\Program\TutorialsArchitectureImpENU.chm" TutorialsArchitectureImpENU-default.chm
RENAME "C:\Program Files\Revit Architecture 2009\Program\Revit.ini" revit-default.ini
RENAME "C:\Program Files\Revit Architecture 2009\Program\KeyboardShortcuts.txt" KeyboardShortcuts-default.txt

Rem Now copy customized content from the "copy" folder; xcopy command with these options copies the folder and its subfolders;

xcopy "\\Ci-adv\apps\CADD\RVT2009\CI\copy" "C:\Program Files\Revit Architecture 2009" /i /s /c /g /h /f /y

@echo Revit 2009 Install completed!

@echo off

@echo if you DONT want to install add-ons and plugins, press Cntrl-C; Else

rem We install RVT2009 Batch Print; worksharing etc that are available for subscription customers...

start "CI Revit Install2" /wait Y:\CADD\RVT2009\CI\batch_print_for_revit_2009_setup.exe
start "CI Revit Install3" /waitY:\CADD\RVT2009\CI\worksharing_monitor_for_revit_2009.exe


rem *******************


Anonymous said...

That was very helpful! I also keep my office's resource content on the network server and path my users to those folder.

One problem I'm working to overcome is how to handle laptop users that link onto the network and also work offthe LAN. I'm considering creating a script to rename alternating Revit.Ini files.

Nicholas said...

Yes. We use a simple script to achieve this.
I have posted info about this at

Anonymous said...

I have been doing it this way as well, the problem is that even if you use:

start /wait setup.exe /I revit.ini

the installer starts, but it shortly drops to the command line and the actual installation keeps going in a silent GUI, so if you have another installation in a script right after the revit install, the second installation will start simultaneously. I am not sure if there are more switches to Setup.exe or some other way of forcing it to wait for the installation to complete prior to dropping to the command line. Does anybody know a work around for this problem?

Nicholas said...

You are right. The /wait switch waits for the setup.exe to finish and then continues. However, in this case, the setup.exe starts another executable file to continue the Revit installation. And our batch file sees that the setup.exe is finished and so continues with the next command. May be there is a method to make this wait. We just use a 'pause' statement and manually 'press any key' to continue after revit is installed.