Difference between revisions of "Arcgis10"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
m (VBA)
m (VBA)
Line 122: Line 122:
 
= Installing the various SDKs (VBA, Java and dotNet) =
 
= Installing the various SDKs (VBA, Java and dotNet) =
 
== VBA ==
 
== VBA ==
Note that the VBA SDK requires a separate licence to the main ArcGIS application. This must be applied for separately from ESRI. See [http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//0001000000tv000000 | here] for ESRI's statement on this. Further details about this will be added in due course.
+
Note that the VBA SDK requires a separate licence to the main ArcGIS application. This must be applied for separately from ESRI. See [http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//0001000000tv000000 here] for ESRI's statement on this. Further details about this will be added in due course.
  
 
<source lang="xml">
 
<source lang="xml">

Revision as of 10:42, 1 March 2011

Introduction

ArcGIS Desktop is a proprietary and full featured desktop GIS package produced by ESRI (http://www.esri.com). In addition to the core software there are various service packs, SDKs, extensions and plugins that you may need to include in your deployment. Fortunately enterprise deployment is described in detail in this white paper:(http://www.esri.com/library/whitepapers/pdfs/arcgis10-enterprise-deployment.pdf)

There are two key considerations for how to deploy this software:

  • What licensing mechanism you will be using (standalone or licence server)?
  • How you plan to manage service packs (slipstream them into the install image or apply them to the clients after the main installation)?

The example package below is for a standalone licence and service packs slip streamed into the install image.

Producing the install image

If your %SOFTWARE% directory is stored somewhere where it is not easy to get write permissions from a windows admin account (eg on a well locked down samba share), then it is possible to perform all of these step on a separate computer and then copy the completed directory to your %SOFTWARE% directory.

Creating an admin install

Copy the contents of your DVD onto your server. You should have a directory that looks something like this:

dir /L /OG %software%\GIS\ArcDesktop10
...
23/02/2011  12:36    <DIR>          .
23/02/2011  12:36    <DIR>          ..
12/01/2011  14:34    <DIR>          sdk_java
12/01/2011  14:34    <DIR>          sdk_dotnet
12/01/2011  14:33    <DIR>          licensemanager
12/01/2011  14:35    <DIR>          arcsde_personal
12/01/2011  14:37    <DIR>          casetools
12/01/2011  14:38    <DIR>          datainterop
12/01/2011  14:39    <DIR>          desktop
12/01/2011  14:39    <DIR>          dotnet35
12/01/2011  14:33    <DIR>          htm
24/02/2011  12:21    <DIR>          extensions
12/01/2011  14:35    <DIR>          sdk_vba
08/07/2010  20:57         5,398,936 esri.exe
04/12/2009  17:52                41 autorun.inf
22/02/2011  11:11       378,672,640 arcgisdesktop10sp1.msp
11/06/2010  19:11            14,678 quickstart.htm
09/06/2010  01:27             1,593 readme.html
09/06/2010  20:14             5,062 10uninstallutilityguide.htm
08/06/2010  16:08         1,994,696 10uninstallutility.exe
10/03/2000  00:32             3,774 esri.ico
...

In order to slipstream the service packs into the install image it is necessary to create an admin install of just the desktop component (ie the setup which is in the "desktop folder"). Because of the length of some of the various filenames in the unpacked ArcGIS installer, I always find it necessary to use the "SHORTFILENAMES=TRUE" option when creating an admin install of ArcGIS.

msiexec /a %software%\GIS\ArcDesktop10\desktop\setup.msi SHORTFILENAMES=TRUE

This is interactive installer will ask you to define a location for the admin install. I've used %software%\GIS\ArcDesktop10\arceditor in the package below.

Applying service packs

Now download the relevant service packs from here: http://resources.arcgis.com/content/patches-and-service-packs?fa=viewPatch&PID=160&MetaID=1685

Apply the service packs using the following commandline:

msiexec /a <location of ArcGIS admin installation>\setup.msi /p <location of ArcGIS service pack>\<patchname>.msp

Licensing

If you are using a standalone licence you will need to register your authorisation codes on the ESRI website. You should receive a *.respc file. In the example below I have stored this in a directory called "%software%\GIS\ArcDesktop10\licences".

If you are using a licence server then you will need to set that up on your network and adjust the "ESRI_LICENSE_HOST" parameter to the setup below.

Main package

<package id="arcgis10" name="ArcGIS Desktop 10.0" revision="20110224.2" priority="0" reboot="false">
	<!-- ArcGIS 10 actually only requires dotNet 3.5 SP1 or higher, but we're installing v4.0 -->
	<depends package-id="dotnet40"/>
	<!-- ArcGIS 10 actually only requires Windows installer 3.1 or higher, but we're installing v4.5 -->
	<depends package-id="win-installer-4.5" />
	<!-- ArcGIS 10 actually only requires Adobe 9.1.2 or higher, but we're installing v10 -->
	<depends package-id="adobereader10"/>
	<!-- MS SQL server Native Cleint (supplied) -->
	<depends package-id="ms-sql-native-client" />
	<!-- ArcGIS 10 actually only requires IE 7.0 or higher, but we're installing v8 -->
	<depends package-id="ie8" />
	<!-- On Window Vista or Win 7, ArcGIS required MS-KB917607 (WinHlp32.exe) to be installed -->
	<depends package-id="windows-help" />
		
	<check type="uninstall" condition="versiongreaterorequal" path="ArcGIS Desktop 10" value="10.0.2800"/>
		
	<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\ArcEditor\setup.msi" SOFTWARE_CLASS=Editor SEAT_PREFERENCE=Fixed DESKTOP_CONFIG=TRUE BLOCKADDINS=#0 ADDLOCAL=ALL' >
		<exit code="0" />
		<exit code="3010" reboot="delayed" />
	</install>
	<!-- Apply a standalone licence file - not required if using a license server -->
	<install cmd='%COMSPEC% /C if /I "%PROCESSOR_ARCHITECTURE%" EQU "x86" "%commonprogramfiles%\ArcGIS\bin\SoftwareAuthorization.exe" LIF "%SOFTWARE%\GIS\ArcDesktop10\licences\ma-arcmap10-authorization.respc" /s' />
	<install cmd='%COMSPEC% /C if /I NOT "%PROCESSOR_ARCHITECTURE%" EQU "x86" "%commonprogramfiles(x86)%\ArcGIS\bin\SoftwareAuthorization.exe" LIF "%SOFTWARE%\GIS\ArcDesktop10\licences\ma-arcmap10-authorization.respc" /s' />
	<!-- Create a shortcut on the desktop if you like that kind of thing -->
	<install cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "%SOFTWARE%\wpkg\tools\3rd-party\nircmd-x32\nircmdc.exe" shortcut "~$folder.programfiles$\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "~$folder.common_desktop$" "ArcMap"'>
            <exit code="4206857" />
        </install>
	<install cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "%SOFTWARE%\wpkg\tools\3rd-party\nircmd-x64\nircmdc.exe" shortcut "~$folder.programfiles$\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "~$folder.common_desktop$" "ArcMap"'>
            <exit code="4206857" />
        </install>

	<upgrade cmd='msiexec /qn /x{64665955-E1A1-4A8B-BFFA-673A95318909}' >
		<exit code="0" />
	</upgrade>
	<upgrade cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\ArcEditor\setup.msi" SOFTWARE_CLASS=Editor SEAT_PREFERENCE=Fixed DESKTOP_CONFIG=TRUE BLOCKADDINS=#0 ADDLOCAL=ALL' >
		<exit code="0" />
		<exit code="3010" reboot="delayed" />
	</upgrade>
	<!-- Apply a standalone licence file - not required if using a license server -->
	<upgrade cmd='%COMSPEC% /C if /I "%PROCESSOR_ARCHITECTURE%" EQU "x86" "%commonprogramfiles%\ArcGIS\bin\SoftwareAuthorization.exe" LIF "%SOFTWARE%\GIS\ArcDesktop10\licences\ma-arcmap10-authorization.respc" /s' />
	<upgrade cmd='%COMSPEC% /C if /I NOT "%PROCESSOR_ARCHITECTURE%" EQU "x86" "%commonprogramfiles(x86)%\ArcGIS\bin\SoftwareAuthorization.exe" LIF "%SOFTWARE%\GIS\ArcDesktop10\licences\ma-arcmap10-authorization.respc" /s' />
	<!-- Create a shortcut on the desktop if you like that kind of thing -->
	<upgrade cmd='%COMSPEC% /c if exist "%PROGRAMFILES%\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "%SOFTWARE%\wpkg\tools\3rd-party\nircmd-x32\nircmdc.exe" shortcut "~$folder.programfiles$\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "~$folder.common_desktop$" "ArcMap"'>
            <exit code="4206857" />
        </upgrade>
	<upgrade cmd='%COMSPEC% /c if exist "%PROGRAMFILES(x86)%\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "%SOFTWARE%\wpkg\tools\3rd-party\nircmd-x64\nircmdc.exe" shortcut "~$folder.programfiles$\ArcGIS\Desktop10.0\Bin\ArcMap.exe" "~$folder.common_desktop$" "ArcMap"'>
            <exit code="4206857" />
        </upgrade>

	<!-- Remove ArcEditor itself -->
	<remove cmd='msiexec /qn /x{64665955-E1A1-4A8B-BFFA-673A95318909}' >
		<exit code="0" />
	</remove>
		
</package>

Installing the various SDKs (VBA, Java and dotNet)

VBA

Note that the VBA SDK requires a separate licence to the main ArcGIS application. This must be applied for separately from ESRI. See here for ESRI's statement on this. Further details about this will be added in due course.

<package id="arcgis10-vba-sdk" name="VBA for ArcGIS Desktop 10.0" revision="20110223.1" priority="0" reboot="false">
	<depends package-id="arcgis10" />

	<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_VBA\setup.msi"' />
	<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_VBA\VBA\VBAOF11.msi"' />
	<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_VBA\VBA\1033\VBAOF11I.msi"' />
	<!-- TODO register the VBA SDK licence here... -->

	<upgrade cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_VBA\setup.msi"' />
	<upgrade cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_VBA\VBA\VBAOF11.msi"' />
	<upgrade cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_VBA\VBA\1033\VBAOF11I.msi"' />
        <!-- TODO register the VBA SDK licence here... -->
	
	<!-- Remove in the reverse order that we installed them -->
	<remove cmd='msiexec /qn /x{A13D16C5-38A9-4D96-9647-59FCCAB12A85}' />
	<remove cmd='msiexec /qn /x{FB97C283-1F3C-42D4-AE01-ADC1DC12F774}' />
	<remove cmd='msiexec /qn /x{85E1ACC2-D07E-47BB-A75E-D35E048B14B4}' />
</package>

Java

<package id="arcgis10-java-sdk" name="Java SDK ArcGIS Desktop 10.0" revision="20110223.1" priority="0" reboot="false">
        <depends package-id="arcgis10" />

	<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_java\setup.msi"' />
	<upgrade cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_java\setup.msi"' />
	<remove cmd='msiexec /qn /x{7069FBA2-F993-484A-A60B-A4D021B6E32A}' />
</package>

dot Net

The .NET SDK also requires some version of Visual Studio installed. The package definition below has a dependency on Microsoft Visual Studio 2008, however any of the follow versions of VS should work:

  • Microsoft Visual Studio 2008 Service Pack 1 (Standard, Professional, Visual Basic Express or Visual C# Express)
  • Microsoft Visual Studio 2010 (Professional, Premium, Ultimate, or Test Professional)
<package id="arcgis10-dotnet-sdk" name=".Net SDK for ArcGIS Desktop 10.0" revision="20110223.1" priority="0" reboot="false">
        <depends package-id="arcgis10" />
        <depends package-id="vs2008" />

	<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_dotnet\setup.msi"' />
	<upgrade cmd='msiexec /qn /norestart /i "%SOFTWARE%\GIS\ArcDesktop10\SDK_dotnet\setup.msi"' />
	<remove cmd='msiexec /qn /x{ABFD2603-877A-474E-B595-339D900B4E60}' />
</package>

Installing common (no cost) packages

To be completed...