Tuesday, October 26, 2010

Deploy Autodesk Design Review 2011 with SCCM 2007

Based upon: http://images.autodesk.com/adsk/files/adr2011_install_guide.htm  and embellished as you see below.  I’ve tested this and it works fine.  By the way, the .exe installation method using /q /v/qn that worked with ADR 2008 does not work with ADR 2011.  Just to let you know.  I tried multiple scenarios to see what works and what does not.  For example, trying to push the .MSI+.MST for ADR 2011 from an existing deployment tree for AutoCAD 2011, Civil 3D 2011 or Map 3D 2011 does not work.  Extracting the MSI from the download .EXE installer doesn’t work either.  You have to download the package from step 3 below.  In any case: enjoy!

Part 1 - Prep:

  1. Create root folder under a UNC share named “ADR2011”
  2. Create sub-folders “VCRedist\2005” and “VCRedist\2008”
  3. Download Design Review 2011 32-bit MSI installer
  4. Download MS Visual C++ 2005 SP1 Runtime
  5. Download MS Visual C++ 2008 Runtime
  • Folder tree should look something like this:
    • \server\software\ADR2011\...
      • SetupDesignReview2011.msi
      • Setup.bat
      • VCRedist\
        • 2005\
        • 2008\

Part 2 - Build:

  1. Extract VC++ 2005 .exe into %TEMP%
    • Creates VCRedist~3.EXE
  2. Extract the Extraction into “ADR2011\VCRedist\2005”
    • Creates vcredist.msi and vcredis1.cab
  3. Extract VC++ 2008 .exe into “ADR2011\VCRedist\2008”
    • Creates a bunch of files, including vc_red.msi
  4. Right-click the .MSI files, select “Properties”, and click the “Unblock” button (if it appears)
    • SetupDesignReview2011.msi
    • Vcredist.msi (2005)
    • Vc_red.msi (2008)
  5. Copy the script code (below) into a text editor and save it as “setup.bat” in the “ADR2011” root folder

Part 3 - Deploy via SCCM:

  1. Create a Collection for targeting clients with ADR 2011
  2. Create a Package:
    1. General (tab)
      1. Name: “Design Review”
      2. Version: “2011”
      3. Manufacturer: “Autodesk”
    2. Data Source (tab)
      1. Check “This package contains source files”
      2. Click “Set” and browse to the UNC folder
    3. Save and Close
  3. Create a Program for the Package:
    1. General (tab)
      1. Name: “Design Review 2011 32-bit Install”
      2. Command Line (Browse to select “setup.bat”)
    2. Environment (tab)
      1. Program can run: “Whether or not a user is logged on”
    3. Advanced (tab)
      1. Check “Suppress program notifications”
    4. Save and Close
  4. Add a Distribution Point:
    1. Select a DP server, save and close
  5. Create an Advertisement:
    1. General (tab)
      1. Name: “Autodesk Design Review 2011 32-bit Install”
      2. Comment: whatever you feel like entering
      3. Package: “Autodesk Design Review 2011 32-bit”
      4. Program: “Design Review 2011 32-bit Install”
      5. Collection: (your collection)
      6. Un-check “Include members of subcollections” (for now anyway)
    2. Schedule (tab)
      1. Click the asterisk “*” button next to “Mandatory assignments”
      2. Select “Assign immediately after this event: As soon as possible” (click OK)
      3. Check “Ignore maintenance windows when running program”
    3. Distribution Points (tab)
    4. Select: “Run program from distribution point”
      1. Select: “Download content from distribution point and run locally” (** you decide if this step works for you **)
    5. Save and Close
  6. Force SCCM machine policy refresh on target computer(s) to run advertisement sooner
  7. Eat something, Drink, Tell some bad jokes, Drink some more
  8. Check on the results
  9. Adjust as needed (and drink some more)
  10. Go to bed

SCRIPT CODE:

@echo off
rem ****************************************************************
rem Filename..: setup.bat
rem Author....: skatterbrainz.blogspot.com
rem Date......: 10/26/2010
rem Purpose...: install Autodesk Design Review 2011
rem ****************************************************************
CLS
SETLOCAL
SET LOG=%TMP%\adr2011_setup.log
SET DESC=DesignReview2011
rem -----------------------------------------------
echo %DATE% %TIME% initializing script [setup.bat] >%LOG%
echo %DATE% %TIME% source........ "%~dps0" >>%LOG%
echo %DATE% %TIME% target........ %computername% >>%LOG%
echo %DATE% %TIME% windir........ %windir% >>%LOG%
echo %DATE% %TIME% progfiles..... %programfiles% >>%LOG%
echo %DATE% %TIME% tmp........... %tmp% >>%LOG%
echo ---------------------------------------------- >>%LOG%
if not exist "c:\program files\common files\microsoft shared\vc\msdia80.dll" (
echo %DATE% %TIME% info: installing vcc 2005 32-bit runtime... >>%LOG%
echo %DATE% %TIME% command = msiexec /i "%~dps0VCRedist\2005\vcredist.msi" /quiet /norestart >>%LOG%
msiexec /i "%~dps0VCRedist\2005\vcredist.msi" /quiet /norestart
rem echo %DATE% %TIME% command = "%~dps0VCRedist\2005\vcredist_x86.exe" /q:a /c:"msiexec /i vcredist.msi /qn /l*v %temp%\vcredist_x86.log" >>%LOG%
rem start /wait "%~dps0VCRedist\2005\vcredist_x86.exe" /q:a /c:"msiexec /i vcredist.msi /qn /l*v %temp%\vcredist_x86.log"
echo %DATE% %TIME% info: result code = %errorlevel% >>%LOG%
) else (
echo %DATE% %TIME% info: vcc 2005 32-bit runtime already installed >>%LOG%
)
echo ---------------------------------------------- >>%LOG%
if not exist "c:\program files\common files\microsoft shared\vc\msdia90.dll" (
echo %DATE% %TIME% info: installing vcc 2008 32-bit runtime... >>%LOG%
echo %DATE% %TIME% command = msiexec /i "%~dps0VCRedist\2008\x86\vc_red.msi" /quiet /norestart >>%LOG%
msiexec /i "%~dps0VCRedist\2008\x86\vc_red.msi" /quiet /norestart
echo %DATE% %TIME% info: result code = %errorlevel% >>%LOG%
) else (
echo %DATE% %TIME% info: vcc 2008 32-bit runtime already installed >>%LOG%
)
echo ---------------------------------------------- >>%LOG%
echo %DATE% %TIME% info: downloading installer package... >>%LOG%
copy "%~dps0SetupDesignReview2011.msi" "%tmp%" /Y
echo %DATE% %TIME% info: installing %DESC%... >>%LOG%
echo %DATE% %TIME% command = msiexec /i "%tmp%\SetupDesignReview2011.msi" /quiet /norestart >>%LOG%
msiexec /i "%tmp%\SetupDesignReview2011.msi" /quiet /norestart
echo %DATE% %TIME% info: result code = %errorlevel% >>%LOG%
echo ---------------------------------------------- >>%LOG%
echo %DATE% %TIME% info: installation complete! >>%LOG%
ENDLOCAL
exit %errorlevel%


Important: Be careful of word-wrapping when copying the code above.  Each line that begins with “echo” should end with “>>%LOG” on the same line.  Do not let it wrap to the next line!

Post a Comment