Building Add-ins for ArcGIS Desktop in .NET

Slides:



Advertisements
Similar presentations
Microsoft SharePoint 2010 technology for Developers
Advertisements

Programming for Geographical Information Analysis: Advanced Skills Lecture 2: ArcObjects Framework Dr Andy Evans.
Data Access Worldwide May 16 – 18, 2007 Copyright 2007, Data Access Worldwide May 16 – 18, 2007 Copyright 2007, Data Access Worldwide Building Great Looking.
ESRI Geoportal Extension 10 November 2010 Out-of-the-box capabilities and additional options.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
Intro to ArcMap Customization with Visual Basic  Create your own toolbars, buttons, interactive tools, and programs  Runs behind the scenes in ArcMap.
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
Introduction to ESRI Add-Ins
Esri UC 2014 | Technical Workshop | Working with Metadata in ArcGIS Aleta Vienneau.
Esri International User Conference | San Diego, CA Technical Workshops | Migrating Custom Desktop Solutions from 9.3 to 10 John Hauck and Ralf Gottschalk.
Operating Systems Day 1. Booting a Computer 1.Switch on the UPS electricity supply - green light electricity failure - red light charging – orange light.
Lesley Bross, August 25, 2010 ArcGIS 10 Add-In Components and Controls.
Introduction to ArcGIS Add-Ins Exercises GIS/LIS Conference, 2014 Rochester, MN.
Windows Tutorial 9 Maintaining Hardware and Software
9.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure.
Danielle Baldwin, ITS Web Services CMS Administrator Application Overview and Joomla 1.5 RC 1 Highlights.
ITE 370. Deployment Deployment is the process used to distribute a finished application (or component) to be installed on other computers.
McGraw-Hill© 2007 The McGraw-Hill Companies, Inc. All rights reserved. 1-1.
WebFOCUS Developer Studio Update Dimitris Poulos Technical Director September 3, 2015 Copyright 2009, Information Builders. Slide 1.
WaveMaker Visual AJAX Studio 4.0 Training Studio Overview.
ETP Reloaded e-Commission Technological Platform Upgrade to Microsoft Office 2003 DIGIT Adapted to DG SCIC.
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Introduction Purpose  This training course provides an overview of the installation and.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Creating.NET Add-ins.
Lesley Bross, August 29, 2010 ArcGIS 10 add-in glossary.
Ch 8. The Control Panel Window –Category View The Control Panel Window –Small icons View.
| | Tel: | | Computer Training & Personal Development Microsoft Office PowerPoint 2007 Expert.
Arc: AddIns Dr Andy Evans. Java Direct access to ArcObjects Framework inside and outside Arc. Ability to add components to the GUI. Ability to communicate.
Extending ArcGIS for Server
Features and Updates Native UTF-8 support Innovative user interface to simplify everyday tasks Enhanced Photo Gallery 2.0 Windows-style control panel interface.
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Developing.NET Applications.
Lecture Set 2 Part A: Creating an Application with Visual Studio – Solutions, Projects, Files.
Mind Your Metadata Geri Miller. Metadata in ArcGIS ArcGIS metadata goals Editing metadata Setting your metadata style Leveraging metadata in ArcGIS Importing.
LTER Information Management Training Materials LTER Information Managers Committee Documenting Spatial Data Theresa Valentine Andrews LTER.
1 Session 1: Introduction to PHP & MySQL iNET Academy Open Source Web Development.
Esri UC 2014 | Technical Workshop | Operations Dashboard for ArcGIS: Extending the Functionality Jay Chen Kylie Donia Tif Pun.
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Customizing the Operations.
Simio User Code Appendix - User Code.
1 Active Directory Administration Tasks And Tools Active Directory Administration Tasks Active Directory Administrative Tools Using Microsoft Management.
Extending the 2007 Microsoft Office System User Interface Mike Taulty Developer & Platform Group, Microsoft Ltd
Lecture Set 2 Part A: Creating an Application with Visual Studio – Solutions, Projects, Files 8/10/ :35 PM.
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Working with Metadata.
Fixing Windows 10 Automatic Updates Install Problem
Windows Vista Configuration MCTS : Internet Explorer 7.0.
CREATING ARCGIS DESKTOP ADD-INS USING PYTHON AND RELATED PACKAGES/MODULES 2016 AGIC Education and Training Symposium September 22, 2016 Erik Glenn ● Pima.
ClickOnce Deployment (One-click Deployment)
Choosing the Right Tool for the Job Up in the Cloud
Yochay Kiriaty Senior Technical Evangelist Microsoft® Corporation
CARA 3.10 Major New Features
CONTENT MANAGEMENT SYSTEM CSIR-NISCAIR, New Delhi
Business Connectivity Services in SharePoint 2010 and Office 2010
CONTENT MANAGEMENT SYSTEM CSIR-NISCAIR, New Delhi
Microsoft Dynamics.
Introduction to ArcGIS Add-Ins
Microsoft Office Illustrated
Utilize Group Policy Terminal Server Settings
Addins Dr Andy Evans Welcome to the course. You’ll find extra information in these note sections below each slide.
Device Apps Joseph Ngari| Program Manager.
Addins Dr Andy Evans Welcome to the course. You’ll find extra information in these note sections below each slide.
Microsoft PowerPoint 2007 – Unit 2
Web AppBuilder for ArcGIS
Building Add-ins for ArcGIS Desktop in .NET
Dongwhan Kim Annie Zhao Steven Lawrance
SQL Server 2005 Reporting Services
ClickOnce Deployment (One-click Deployment)
MS Confidential : SharePoint 2010 Developer Workshop (Beta1)
ArcGIS Pro: An Introduction Overview
Presentation transcript:

Building Add-ins for ArcGIS Desktop in .NET July 26, 2012 Building Add-ins for ArcGIS Desktop in .NET Russell Louks and Steve Van Esch

ArcGIS Desktop Add-Ins A better way to customize and extend ArcGIS Desktop applications. Easier to build Easy to share More secure C#, VB.NET, Java, and Python

Add-In Types supported at ArcGIS 10.1 Buttons Dockable Windows Tools Application Extensions Combo Boxes Editor Extensions Multi-Items Editor Construction Tools Menus SOE (Server) Context Menus Toolbars Tool Palettes

Supported Development Environments Visual Studio 2010 Visual Basic 2010 Express Edition Visual C# 2010 Express Edition Eclipse IDE for Java Developers .NET 3.5, .NET 4.0

New at ArcGIS 10.1 IDE and Authoring Improvements Extended Help Capabilities CHM, WEB help, PDF, etc. New Types Editor Construction Tools Sever Object Extensions (SOEs) Python Add-Ins

Add-In File Anatomy AddIn File XML Metadata Resources (zipped folder) Assemblies/JARs/PYDs AddIn File (zipped folder) .*.esriAddIn

Anatomy – Resources & Localization

Anatomy - Declarative Aspects <DockableWindows> <DockableWindow id="ESRI_Example_DockableWindow" class="ExampleDockableWindowClass" caption="Example Dockable Window"> <InitialPlacement height="300" width="300" state="pinned" position="right" neighbor="esriArcMapUI.TOCDockableWindow" /> </DockableWindow> </DockableWindows> <AddIn language="CLR" library="ESRI.ArcGIS.SchemaGenerationWizard.dll" namespace="CaseUI.SchemaGenerationWizard"> <ArcCatalog> <Commands> <Button id="SchemaGenerationWizard_SchemaGenerationWizard" class="SchemaGenerationWizard" tip="Use the Schema Generation Wizard..." message="Schema Generation Wizard" caption="Schema Generation Wizard" category="CASE Tools" image="Images\SchemaGenerationWizard.png" /> </Commands> </ArcCatalog> </AddIn> <ESRI.Configuration xmlns=http://schemas.esri.com/Desktop/AddIns xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Name>CASE Tools</Name> <AddInID>{f390c49d-a7a9-4b9f-a627-20f1ee3d5ca6}</AddInID> <Description>Case Tools</Description> <Version>1.0</Version> <Image>Images\CaseTools.png</Image> <Author>ESRI</Author> <Company>ESRI</Company> <Date>04/23/2010</Date> <Targets> <Target name="Desktop" version="10.0" /> </Targets> ID Images Target Category Author Toolbars content Version Menu content Company Docking state Website Docking position Descriptions Tooltips Captions Help

Anatomy - Programmatic Aspect Add-In Behavior coded using Visual Studio / Eclipse wizards and templates Base classes for each Add-In type Full ArcObjects API + programming environment (.NET/Java) public class SimpleButton : Button { protected override void OnClick() MessageBox.Show("Hello World"); }

Anatomy - Classic (managed) COM Button comparison

Add-In File Discovery & Sharing Internet Add-In files are automatically discovered in well known local folders and incorporated into the Desktop applications at runtime. Folders are per user and per ArcGIS version Under Windows Vista & Windows 7: C:\Users\<username>\Documents\ArcGIS\AddIns\Desktop10.1 Under Windows XP: C:\Documents and Settings\<username>\My Documents\ArcGIS\AddIns\Desktop10.1

Add-In File Discovery & Sharing Administered network shares Simplifies Updates Intranet

Managing Add-Ins - Installation Utility Double-click “Install” Customize - Add From File XCOPY

Add-In Versioning Policy Backward compatibility within a major version ArcGIS 10.1 can consume 10.0 Add-Ins ArcGIS 10.0 cannot consume 10.1 Add-Ins

Managing Add-Ins – Add-In Manager Dialog Shows detailed information on all installed Add-Ins Mine vs. Shared Deleting Add-Ins

Managing Add-Ins – Sharing & Security Custom search folders Security Settings

Managing Add-Ins - Additional Security Settings Admin Controls Esri Only Load from administrator folders only Admin security level lock

Managing Add-Ins Demo

Digitally Signing Add-Ins IETF/WC3 XML-DSig standard (within OPC archive) Trust Source Traceability Tampering ESRISignAddin Utility

Moving to Add-Ins Porting guidelines Do not rely on: internal static SampleExt _me; public SampleExt() { _me = this; } internal static SampleExt Me { get UID id = ThisAddIn.IDs.SampleExt.ToUID(); ArcMap.Application.FindExtensionByCLSID(id); return _me; } public void Foo() Moving to Add-Ins // Finding the extension... Add-In style. protected override void OnClick() { // Call custom method.. SampleExt.Me.Foo(); } // Finding the extension... COM style. protected override void OnClick() { // Find the custom COM interface.. IApplication app = this.Hook as IApplication; ICustExt ext = app.FindExtensionByName("ACME.SampleExt") as ICustExt; // Call custom method.. ext.Foo(); } Porting guidelines http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index .html#/How_to_migrate_from_COM_components_to_add_ins/00010000 03z6000000 Do not rely on: COM Components requiring registration Assemblies requiring registration in the GAC Pre-existing dependencies Public API exposure IDispatch for external access Most business logic should not need to be changed

Authoring an Add-In Demo

Questions

External Links WC3 XML Digital Signatures ArcGIS Desktop Add-Ins http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Building_add_ins_for_ArcGIS_D esktop/0001000000w2000000 WC3 XML Digital Signatures http://www.w3.org/Signature/ ISO/IEC 29500-2:2008 Open Packaging Conventions http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=51459 ITU X.509 Certificates http://www.itu.int/rec/T-REC-X.509/en ISO Language Codes http://www.loc.gov/standards/iso639-2/php/code_list.php