How to decide which ArcGIS Desktop project template to use


SummaryThere are several ArcGIS Desktop project templates to choose from. This document helps you decide which project template you can use to start your development efforts.

Development licensing Deployment licensing
ArcView ArcView
ArcEditor ArcEditor
ArcInfo ArcInfo

Additional Requirements
  • ArcGIS Visual Studio IDE Integration Framework for Visual Studio 2005, Visual Basic Express, or Visual C# Express editions.

In this topic


ArcGIS Desktop projects

ArcGIS Desktop developers can build simple stand-alone applications using ArcObjects components available in ArcGIS Desktop, but will spend most of their time implementing custom components in a class library to customize or extend an ArcGIS Desktop application. This document helps you decide which project template you can use to start your development efforts.
 
The following screenshot shows Visual Studio's New Project dialog box where you can start to create custom ArcGIS Desktop projects:
 
 

Building stand-alone applications

Windows Application—Choose this template in the New Project dialog box to create stand-alone Windows form applications with embedded geographic information system (GIS) functionality. The output assembly is an executable file (.exe). For visual mapping functionality, the ArcGIS Desktop SDK includes two ArcGIS controls: MapControl and PageLayoutControl. The ArcReaderControl and ArcReaderGlobeControl are available with the Publisher extension. These controls can be dragged and dropped on a Windows form designer by ArcGIS Desktop developers.
To build robust ArcGIS applications using Windows forms that include additional ArcGIS controls (TOCControl, ToolbarControl, SceneControl, GlobeControl, LicenseControl, and SymbologyControl), an ArcGIS Engine Developer license is needed.
Some candidates for an ArcGIS Desktop Windows application include simple mapping applications, adding GIS functionality in an existing application, processing GIS datasets, and so on.
 
Console application—Choose this template to create nongraphical user interface (nonGUI) applications that have GIS functionality. Interaction with this type of application is done through the command prompt or the console window. The output assembly is an executable file (.exe). A candidate for an ArcGIS Desktop console application is batch processing GIS datasets.
 

Implementing custom components

Class library (General)—You can create a class library to embed GIS functionality into other applications. Use this project template to write a generic class library with custom components that are designed to work in any of the ArcGIS Desktop applications (ArcCatalog, ArcMap, ArcScene, and ArcGlobe) or even your custom ArcGIS Desktop application. The output assembly is a dynamic link library file (.dll). Some candidates for an ArcGIS Desktop class library (General) application includes commands, tools, custom layers, custom geoprocessing tools, geodatabase, and so on.
 
Many of these customizations can be accomplished with an ArcGIS Item template. For a series of VB.NET and C# walkthroughs for creating custom components to extend ArcGIS Desktop, refer to Introduction and walkthrough goals.

Targeting a specific ArcGIS Desktop application

Four class library project templates are available to pair up with ArcGIS Desktop applications (ArcCatalog, ArcMap, ArcScene, and ArcGlobe). When you select one of these templates, the ArcGIS Project wizard only shows assemblies that are commonly used in the target application. The debug application of the project is set to the selected ArcGIS Desktop application (not available in Visual Studio Express editions). The following are the available class library project templates:


See Also:

About the ArcGIS project templates