How to compile an ArcGIS Desktop add-in in Visual Studio 2013

How to compile an ArcGIS Desktop add-in in Visual Studio 2013

I have several projects made in Visual Studio 2010, those projects are ArcGIS Desktop Add-in's. I have been change of computer, and my new one only have Visual Studio 2013 due to some company politics I'm not allowed to install VS2010.

I tried to open this projects in VS2013, and they open with no problem, but when i try to compile it, it get me the following issue:

ESRI.ArcGIS.AddIns.SDK, Version=, Culture=neutral, PublicKeyToken=8fc3cc631e44ad86. Could not load file or assembly 'Microsoft.VisualStudio.Shell.9.0, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified. Confirm that the declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.

my research so far has get me to install the VS SDK, but I'm not quite sure about which one(2008… 2013)

Any one has any possible solution for this?

First, I check that Microsoft.VisualStudio.Shell.9.0 was in the GAC, It was not there… :( then I proceed as Juho Vainio in Geonet suggest : Visual Studio Command Prompt --> Run as Administrator --> gacutil /i Microsoft.VisualStudio.Shell.9.0.dll, but it failed because I was not giving the full pat of the dll, so I search for it in the Visual Studio 2008 SDK, and Voila!!! it appear in the GAC

but the project still does not compile, so, I chec in the real GAC:


and found that the file does not exist neither in the GAC_32, nor GAC_64 folder, moreover, it exists in the folder GAC_MSIL, so… i took the folder C:WindowsMicrosoft.NETassemblyGAC_MSILMicrosoft.VisualStudio.Shell.9.0 and copied it to the folders GAC_32 and GAC_64.

Now the project compiles.

Here's an additional answer since I just went through this process with ArcGIS 10.3 and Visual Studio 2015. I'll just paste the reply I posted at There are several steps, but none of them are too difficult.

First, to get the SDK installed, you need to add a few registry keys so that ArcGIS thinks that you have a supported version of Visual Studio installed.

  1. Add registry string value:


    (or whatever version the SDK installer is looking for) and set it to:

    C:Program Files (x86)Microsoft Visual Studio 14.0Common7IDE

    (or whatever version of Visual Studio you are trying to use).

  2. Add registry string value:


    (or whatever version the SDK installer is looking for) and set it to:

    C:Program Files (x86)Microsoft Visual Studio 14.0

    (or whatever version of Visual Studio you are trying to use).

Second, if you're working with an existing project created for/with an older version of ArcGIS and Visual Studio and creating an add-in, you may need to edit the project file that builds the add-in to correct part of its build task. More on this at

  1. Change


    and change



    Alternatively, you can copy and rename the existing ESRI.ArcGIS.AddIns.targets file to ESRI.ArcGIS.AddIns.11.targets. The MSBuildExtensionsPath is located in your Program Files (x86) directory.

Third, if you're building an add-in, you need to edit the .targets file from the previous step to look for the version of Visual Studio you are trying to use.

  1. In

    C:Program Files (x86)MSBuildEsriESRI.ArcGIS.AddIns.11.targets





    Alternatively, you can simply remove the Condition="'$(VisualStudioVersion)' == '12.0'" from these entries.

Fourth and finally, you need a copy of the Visual Studio 2013 shell registered in the GAC. I was able to copy this from another machine (it was located atC:WindowsMicrosoft.NETassemblyGAC_MSILMicrosoft.VisualStudio.Shell.12.0), but if you don't have access to a machine with VS2013 installed you can download the Visual Studio 2013 SDK from and copy it from there.

  1. Find a copy of theMicrosoft.VisualStudio.Shell.12.0.dllfor Visual Studio 2013 and copy it to your machine. Register it in the GAC using an elevated command prompt by enteringgacutil /i Microsoft.VisualStudio.Shell.12.0.dllfrom the location you copied the file to on your machine. Note that you will now have two versions of this file in the GAC, one from Visual Studio 2013 and one from Visual Studio 2015. This can be seen by enteringgacutil /lfrom the command prompt to list all of the entries in the GAC. My entries look like:

    Microsoft.VisualStudio.Shell.12.0, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL Microsoft.VisualStudio.Shell.12.0, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL

Hope that helps some others.


These are the steps I followed multiple times to get addins working in versions of visual studio other than 2010, using the 10.2.2 arcobjects sdk. My guess is this would probably work with 10.1 as well.

  1. Install the version of visual studio you wish to use
  2. Install visual studio 2010 and ArcMap 10.2.2 (requirements for arcobjects 10.2.2)
  3. Install ArcObjects SDK (10.2.2 is the version I used)
  4. Install Visual Studio SDK 2010
  5. Run Visual Studio command prompt as administrator "C:Program Files (x86)Microsoft Visual Studio 2010 SDKVisualStudioIntegrationCommonAssembliesv2.0"

    b.gacutil /i Microsoft.VisualStudio.Shell.9.0.dll

  6. Build the addin (visual studio must be restarted if you had it open)

Visual Studio 2013 does not support ArcObjects SDK. I know it sucks. You can however force VS2013 to build an AddIn project if you have a copy of the files below:

  1. Copy ESRI.ArcGIS.AddIns.targets to C:Program FilesMSBuildESRI
  2. ESRI.ArcGIS.AddIns.SDK.dll needs to be added to assembly cache using gacutil.exe

Can't remember where I got this info or how exactly I did it, but it works now for me.

I had a similar issue and I have solved it using devenv.exe instead of msbuild.exe as described in Building ArcMap's Add-in using command line

If Visual Studio 2013 and 2015 are both installed on the machine, this problem does not occur. Visual Studio 2013 includes the Microsoft Visual Studio Shell 12.0 library. To resolve this issue, download and install the Microsoft Visual Studio 2013 Shell (Isolated) redistributable Package.

You can see on support Esri

Setting up your development environment for Python and ArcGIS Desktop

  1. Download Aptana and Install <>
  2. Open up Aptana
  3. Configure your workspace. This will be where all of your project files will be stored. I recommend throwing this in C : UsersYourUsernameSource. You can hit that checkbox so that it doesn't ask you ever again.
  1. Once Aptana is open, you will need to specify your Python Interpreter. This process allows you to specify the version of Python that ships with the ArcGIS for Desktop or ArcGIS for Server installed on your machine. [Note: ArcGIS for Server ships with x64 bit python. You can add in both 32 and 64 bit interpreters if you have desktop and server on the same machine.]
  2. First open up Aptana preferences
  3. Open PyDev / Interpreter - Python
  4. Click the button labeled New…
  5. Give the interpreter a unique name. I am labeling it ArcGIS Python 2.7 x32, because this is for the default python location for ArcGIS for Desktop 10.1. If I were doing server, I would label it ArcGIS Python 2.7 x64.
  6. Also, add in the path to the python executable:
    - The default path for 10.1 desktop is C : Python27ArcGIS10 . 1python . exe
    - The default path for 10.1 server is C : Python27ArcGISx6410 . 1python . exe
    - The default path for 10.0 is C : Python26ArcGIS10 . 0python . exe
  7. Click OK a few times.
  8. The python interpreter is now ready for action.

  1. First select the button labeled "Create Project" in the right hand window of Aptana.
  2. Select PyDev / PyDev Project
  3. Give your project a cool name, like "Example" and make sure to specify the Python interpreter you created in the previous section. Click Finish.
  4. Create a python package by right clicking on your folder and selecting New / PyDev Package. This is the folder you will be creating all of your code in. Name it something clever like, example. A python module is a folder with a __init__ . py file inside. This allows your python files you create as a module rather than just one off scripts.
  5. Now right click on the example folder and create a new python file by selecting New / PyDev Module. Give it a fun name like "Example" and select the "Module: Main" template. Finally click finish.
    - More advanced users can play around with the other templates. For right now the main one should work perfectly for our needs.
  6. The following code prints out the name for all of the toolboxes available in ArcMap. Type it in to see if your Python Environment is setup and ready to roll in Aptana.

import arcpy
if __name__ == '__main__':
toolboxes = arcpy . ListToolboxes ( ) # Query for a list of toolboxes
for toolbox in toolboxes: # Loop through the toolboxes
print toolbox # And Print the name out

Add a Toolbar to the Project

Video Demonstration: Add a toolbar (duration 0:46)

Open the Solution Explorer if it is not visible (View | Solution Explorer). Right-click on the project name (“VBA_to_CS_Tutorial”) and select Add | New Item… from the context menu.

Locate and select the Desktop Add-Ins item in the Categories list. Under Templates, select Add-in component. Since we are adding a toolbar, you can ignore the value in the Name box, it will not be used. Click the OK button.

The ArcGIS Add-ins Wizard displays again, but this time displays only Add-in components.

Click the Add-in Command Bars item on the left. Select the Toolbar item.

Enter the following values:
Caption: Tutorial_Toolbar
Premier Toolbar: checked (so that toolbar is displayed by default)
Items: click Add Item underneath Reference ID and select the StaggerOffsetsButton.

Expand this to view contents of the Config.esriaddinx file that includes the button and toolbar (+/-)

<ESRI.Configuration xmlns="" xmlns:xsi=""> <Name>VBA_to_CS_Tutorial</Name> <AddInID><34b94edb-b71a-4fde-bcdf-c344da8774d1></AddInID> <Description>VBA_to_CS_Tutorial</Description> <Version>1.0</Version> <Image>ImagesVBA_to_CS_Tutorial.png</Image> <Author>jeffh</Author> <Company>Qtools</Company> <Date>12/7/2010</Date> <Targets> <Target name="Desktop" version="10.0" /> </Targets> <AddIn language="CLR" library="VBA_to_CS_Tutorial.dll" namespace="VBA_to_CS_Tutorial"> <ArcMap> <Commands> <Button message="Stagger Offset: Offsets all feature in selected layer by a user-specified stagger amount on either side of the original position. Start an edit session before use." caption="Stagger Offset Features" tip="Stagger Offset Features: Offsets all features in selected layer." category="Add-In Controls" image="ImagesStaggerOffsetButton.png" /> </Commands> <Toolbars> <Toolbar caption="Tutorial_Toolbar" showInitially="true"> <Items> <Button refID="Qtools_VBA_to_CS_Tutorial_StaggerOffsetButton" /> </Items> </Toolbar> </Toolbars> </ArcMap> </AddIn> </ESRI.Configuration>

Reference path is incorrect

If projects are shared on different computers, some references might not be found when a component is located in a different directory on each computer. References are stored under the name of the component file (for example, MyComponent). When a reference is added to a project, the folder location of the component file (for example, C:MyComponents) is appended to the ReferencePath project property.

When the project is opened, it attempts to locate these referenced component files by looking in the directories on the reference path. If the project is opened on a computer that stores the component in a different directory, such as D:MyComponents, the reference cannot be found and an error appears in the Task List.

To fix this problem, you can delete the broken reference and then replace it using the Add Reference dialog box. Another solution is to use the Reference Path item in the project's property pages and modify the folders in the list to point to the correct locations. The Reference Path property is persisted for each user on each computer. Therefore, modifying your reference path does not affect other users of the project.

Project-to-project references do not have these problems. For this reason, use them instead of file references, if you can.

To fix a broken project reference by correcting the reference path

In Solution Explorer, right-click your project node and click Properties.

The Project Designer appears.

If you are using Visual Basic, select the References page and click the Reference Paths button. In the Reference Paths dialog box, type the path of the folder that contains the item you want to reference in the Folder field, and then click the Add Folder button.

If you are using C#, select the Reference Paths page. In the Folder field, type the path of the folder that contains the item you want to reference, and then click the Add Folder button.


I'm currently working on a C++ project in Visual Studio 2013. I've added Geographic.lib into this project - from my understanding it was built using Visual Studio 2010. When compiling the project I get several "LNK2001 unresolved external symbol" errors. Here is the Visual Studio error output:

Does anyone know how to solve this? I'm new to both Visual Studio C++ and GeographicLib so any help is greatly appreciated.

Comment has been marked as spam.
View and moderate all "Help" comments posted by this user

I seem to have figured it out. I had to compile GeographicLib in Visual Studio 2013 (I let it update automatically) and replace the existing 2010 .lib file with the generated 2013 .lib file.

First of all the library for version 1.46 is built with Visual Studio 12
2013 (not Visual Studio 10 2010 -- there's a problem with the
documentation here, sorry!). This is the same compiler version as the
one you are using so the library will be compatible.

Secondly, please say exactly what "I've added Geographic.lib into this
project" means. Typically, this entails giving the version number, how
you installed the library, the settings in Visual Studio, etc. I can
sometimes guess the answers to these questions but you'll get an answer
quicker providing the additional information.

Lastly, I'm guessing that you neglected to specify

which is necessary if you are going to use the static library. See the
documentation at

I see from your second message that you got things workings. However
your reason is wrong!

It's not that you compiled GeographicLib with VS 2013 (since the binary
package used the same version). Instead, it's because (again I'm
guessing!) that you only built the static library (the binary package
comes with both static and shared libraries). In that case, there's no

Lehigh Software

The Install Software page serves as the central repository for all LTS software at Lehigh University. Read about some of the new features on the Help & About Page.

You must log in to view and install software!

Licensed Software

3DPrinterOS is an easy-to-use cloud based interface that works across the majority of 3D Printers.

A general purpose finite element analysis program.

DOCUMENTATION: (requires creating a free 3Dexperience ID)

Adobe professional editing software including Photoshop, Flash, and Dreamweaver.

ANSYS Academic Multiphysics Campus Solution (25 tasks of Research and 250 tasks of Teaching). The ANSYS Academic products incorporate features such as advanced meshing, multiphysics solvers, rigid body dynamics, CFD, and fully associative CAD connectivity into one product license.

Final Cut Pro is a non-linear video editing software.

ArcCatalog provides file management for all parts of ESRI's mapping solution suite, ArcGIS Desktop.

Geographic Information Systems (GIS) software which performs advanced spatial analyses, models operational processes, and visualizes results on professional quality maps.

Cloud-enabled all-in-one client for the ArgGIS data formats and mapping tools.

Interactive map creation and editing tool from the ArcGIS desktop suite.

3D rendering client for ArcGIS desktop data.

Software and drivers for the Arduino Uno microcontroller board. Includes an open-source physical computing platform and development environment for writing software for the board.

Models and analyzes business, service, or manufacturing processes or flows.

Add-in for Adobe PhotoShop that adds pattern creation tools

Add-in for Adobe Illustrator for creating patterns.

Specialized version of AutoCAD for Architects

Specialized version of AutoCAD for 3D Civil Engineering.

2D technical drawing system

A 2D and 3D design and drafting CAD software suite.

Avast Free for Education provides antivirus protection for Lehigh-owned computers. Faculty, staff and students who want Avast antivirus for their personally-owned machines can download a copy here:

Banner is the ERP (Enterprise Resource Planning) package that Lehigh uses for HR, Financial, Alumni and Student Information.

A full featured Integrated Development Environment (IDE) for the C/C++ programming language.

Printed Circuit Board design software

Schematic design solutions for the creation and documentation of electrical circuits.

A data analysis and auditing tool for accounting and financial professionals.

This full-featured chemical drawing package is now sold by Perkin-Elmer, and Lehigh's license covers the 'ChemDraw Professional' suite. It enables you to do chemical structure drawing, export reaction graphics, and search SciFinder with chemical structures.

Connect to the Lehigh SSL VPN from off campus.

An enterprise voice, messaging and video platform for desktop and mobile devices.

COMSOL is a powerful interactive environment for modeling and solving scientific and engineering problems based on partial differential equations (PDEs). COMSOL allows you to create equation-based models through a flexible self-contained graphical user interface or from the MATLAB command line.

Confluence is a wiki documentation application used at Lehigh for creating and providing documentation for projects and departments.

Course Site is Lehigh's instance of Moodle, a Learning Management System (LMS).

CrashPlan ProE, the Enterprise version of Code42's CrashPlan Backup system is LTS's recommended desktop backup solution.

This software is meant for Lehigh-owned computers only. It is normally installed by LTS support staff. If you require CrowdStrike on your Lehigh-owned computer, please contact the LTS Help Desk at 610-758-HELP.

Send personalized email messages to multiple recipients via Gmail.

DNA Master is a freeware DNA sequence editor and analysis package. I only ask that users register the program and send interested parties here to pick up a version. This program is quite powerful in what it can do, and as such does not limit itself in taking up resources. A fast computer with 512 MB of memory (or more) is recommended greater amounts of memory are required for some functions. The installation of DNA Master requires setting up the Borland database driver subsystem. These files are also used in the Strain Manager, Oligo manager, Chemical Manager, and Invoice Manager programs.

Java Development Environment

Dropbox is a cloud based file sharing / storage service similar to google drive.

Ensemble Video is a cloud based video storage repository where Lehigh Faculty can upload and share videos.

An image processing application that supports visualization, analysis, and presentation of all types of digital imagery.

PDF documentation for ESI packages

Secure file transfer (SFTP) application for Mac OS X

LU FileSender is a service to make it easy for you to move files, including large files up to 2.0 GB, in and out of the University.

FlexSim Healthcare is a 3D simulation tool for modeling the complexities and nuances of healthcare management work-flow, including patient flow, staff utilization, and resource management. It is available in Mohler 121.

Electronic structures program.

GAUSS VIEW is an advanced graphical user interface designed to be used with Gaussian to make calculations easier, quicker and more efficient.

Sync work or school files to your computer with Drive File Stream.

This application supports materials education across engineering, design, science, and sustainable development. (NOTE: prior to the 2020 release this product was named CES EduPack)

This software will display campus alerts on a windows desktop.

(IBM SPSS Amos) Mathematical modeling software.

A scientific graphing, data analysis, image processing and programming software tool for scientists and engineers.

The Intel® Composer XE product Family delivers industry leading C++ and Fortran compilers combined with the performance-oriented Intel® Math Kernel Library, Intel® Integrated Performance Primitives, and Intel® Threading Building Blocks.

A Fortran development environment which supports advanced optimization and parallel processing.

Intel® VTune™ Amplifier XE is our newest performance profiling tool and builds on the success of Intel® VTune™ Performance Analyzer. It includes all the capabilities of Intel® Parallel Amplifier plus a number of advanced capabilities for developers who need even greater performance optimization.

Jamf Pro, developed by Jamf, is a comprehensive management system for Apple macOS computers and iOS devices.

NetBeans is a modular, standards-based integrated development environment (IDE) written in the Java programming language.

Electronic circuit design system.

The Kumo Client facilitates users' access to their cloud-based or on-premise data.

Graphical programming environment for data acquisition, control, analysis, and presentation.

Graphical access to Lehigh personal LAN storage space (H-Drive)

This is a utility to map your windows home space.

Scalar is a free, open source authoring and publishing platform that’s designed to make it easy for authors to write long-form, born-digital scholarship online. Scalar enables users to assemble media from multiple sources and juxtapose them with their own writing in a variety of ways, with minimal technical expertise required.

Magma is a programming language designed for investigating algebraic and combinational structures. Advanced symbolic algebraic computations are feasible due to the way the information is stored.

Mahara is an open source eportfolio system that integrated into Course Site

Anti-Malware (like antivirus, but different) software designed to protect Lehigh-owned Windows PC's from threats.

Mathematical analysis software

Software primarily intended for the verification, validation, documentation and re-use of engineering calculations.

Mathematical analysis software.

Mathematical analysis software. Matlab Toolboxes

Azure Dev Tools for Teaching is a service that provides access to a variety of Microsoft software for learning, teaching and research purposes. This software includes developer and designer tools, servers and applications, as well as training and certifications. Imagine access is available to all current students and faculty.

Microsoft Office (including Office 365) is a productivity suite including Word, Excel and PowerPoint. (Note: the Windows version also includes Access, Publisher and OneNote).

Provides project management tools to manage projects.

Diagramming program that uses vector graphics

Microsoft Visual Studio is a programming environment.

Windows is a graphical Operating System for Personal Computers.

Statistical and graphical analysis software.

Enhanced terminal for Windows with X11 server, tabbed SSH client, network tools and much more

Cloud based store front for microsoft (and some other vendors) products licensed at a discount.

Overleaf is a cloud-based tool for producing scientific papers, theses, dissertations, presentations and other documents in LaTeX.

Panopto - Lehigh University's Panopto service is a cloud-based service that provides various video services including screen capture, streaming and lecture capture. Panopto is compatible with both PC and Mac and allows recording of voice and screen capture of a desktop, PowerPoint or Keynote.

The PI System is an open data infrastructure that enables global enterprises to gather streaming real-time sensor data from over 450 different data sources, efficiently store, contextualize, process, share, visualize and analyze data.

Research Suite is an enterprise online survey software solution that empowers you to collect, analyze and act on relevant data. It offers capabilities to conduct Customer Satisfaction Surveys, Marketing Research, Ad Testing and Product Feedback

This software allow users to check USPS mailing addresses for validity and allows users to paste corrected addresses into applications.

R is a language and environment for statistical computing and graphics.

An inter-departmental room scheduling program.

Integrated design of slabs, mats and footings

An integrated structural design and analysis package.

Data analysis software suite. From TS1M2 forward, Base SAS and Enterprise Miner are included in the same installation package.

2D and 3D CAD/CAM software.

Python programming environment

SQL development environment by Oracle.

Statistical and graphical analysis software.

Geological analysis software written by Prof. Rick Allmendinger of the Earth and Atmospheric Sciences Dept. at Cornell University.

Facilitates modeling, evaluation and optimization of integrated processes.

Helps elementary students understand geometric principles as they experiment with tessellations.

Thermo-Calc is thermodynamics and diffusion software. DICTRA is software for accurate simulations of diffusion in multicomponent alloy systems.

Supports the creation of drafts, models, and presentations for architecture, landscape, and entertainment design. Free student licenses are available here

VCD is used to install Lehigh University software directly from an ISO file. Works and behaves just like a physical CD/DVD drive, however it exists only virtually.

Lehigh wordpress allows users to create individual personal wordpress sites and blogs.

Zoom is a cloud-based video conferencing and recording tool. Zoom combines video conferencing, online meetings, and mobile collaboration into one platform.

No software titles are available based on your search criteria

Free/Open Source Alternatives

  • Abaqus
  • Aptana
  • Arduino
  • Autodesk Suite
  • Autodesk Suite
  • MobaXterm
  • Bloodshed C++
  • Aptana
  • Fetch
  • ArcGIS Desktop Suite
  • ArcGIS Desktop Suite
  • ArcGIS Desktop Suite
  • Fetch
  • SSH Secure Shell
  • Adobe Creative Cloud
  • Microsoft Office
  • Microsoft Office
  • ArcGIS Desktop Suite
  • ImageJ
  • Adobe Creative Cloud
  • Microsoft Visio
  • Java JDK with NetBeans IDE
  • Microsoft Office
  • Microsoft System Center
  • Microsoft Visual Studio
  • MobaXterm
  • SSH Secure Shell
  • Mozilla Thunderbird
  • Java JDK with NetBeans IDE
  • Abaqus
  • Microsoft Office
  • Abaqus
  • Adobe Creative Cloud
  • ArcGIS Desktop Suite
  • Microsoft Project
  • IBM SPSS/PASW Statistics
  • SSH Secure Shell
  • ArcGIS Desktop Suite
  • IBM SPSS/PASW Statistics
  • Minitab
  • SAS
  • SAS
  • MobaXterm
  • SWI-Prolog
  • Microsoft Windows
  • Visual Analysis

© 2013 Lehigh University &bull Library & Technology Services

EWFM Library & Computing Center &bull 8A East Packer Avenue &bull Bethlehem, PA 18015-3102

Windows Forms Designer on HDPI monitors

The Windows Forms Designer in Visual Studio doesn't have scaling support. This causes display issues when you open some forms in the Windows Forms Designer on high dots per inch (HDPI) monitors. For examples, controls can appear to overlap as shown in the following image:

When you open a form in the Windows Forms Designer in Visual Studio on an HDPI monitor, Visual Studio displays a yellow informational bar at the top of the designer:

The message reads Scaling on your main display is set to 200% (192 dpi). This might cause rendering problems in the designer window.

This informational bar was introduced in Visual Studio 2017 version 15.8.

If you aren't working in the designer and don't need to adjust the layout of your form, you can ignore the informational bar and continue working in the code editor or in other types of designers. (You can also disable notifications so that the informational bar doesn't continue to appear.) Only the Windows Forms Designer is affected. If you do need to work in the Windows Forms Designer, the next section helps you resolve the problem.

How to compile an ArcGIS Desktop add-in in Visual Studio 2013 - Geographic Information Systems

####About CASPER (Capacity-Aware Shortest Path Evacuation Routing) is a custom Network Analyst tool that uses a state-of-the-art routing algorithm to produce evacuation routes to the nearest safe area for each evacuee or group of evacuees. It is an innovative new ArcGIS tool that can help city officials, public safety and other emergency departments to perform evacuation planning more intelligently and efficiently.

  • Visual C++ Redistributable Packages for Visual Studio 2013 (Install both x86 and x64 versions)
  • ArcGIS Desktop 10.3
  • Network Analyst Extension
  • (Optional) Background Geoprocessing (64-bit)
  • (Optional) ArcGIS Desktop C++ SDK: only if you want to compile the program yourself

####Using the Code The project can be compiled with VS2013 or later. You need to install ArcGIS Desktop C++ SDK and Boost libraries. download the latest version, extract it on your PC, then add its path to VS C++ project include directories (more info). You also need a post-commit and a post-checkout git hook to generate an extra header file. Use the following sample:

####Installation In order to install, first unzip the downloaded file. Next, execute the "install.cmd" script. This script needs to run as an administrator in Windows Visa and later operating systems. Make sure any previous CASPER installation is completely uninstalled. You may find detailed instructions in the user manual.

####Acknowledgement I would like to thank Esri Application Prototype Lab (APL), the Esri Network Analyst team, and USC Spatial Sciences Institute (SSI) for their support during the development of this tool. The programing of this tool started when I was a summer intern at Esri in 2011. I worked at APL during that summer and also received tremendous support from the Network Analyst team. After Esri, I continued as a PhD student and research assistant at USC SSI. Thanks to SSI support, I'm still actively developing the CASPER algorithm to improve the future of public safety.

####Copyright / Permission CASPER is released as a free open-source tool under Apache 2.0 license. For a complete copy take a look at license.txt . If you decided to use our tool in your work, we would ask that you cite it as:

K. Shahabi and J. P. Wilson, “CASPER: Intelligent capacity-aware evacuation routing,” Computers, Environment and Urban Systems, vol. 46, pp. 12–24, Apr. 2014

NO WARRANTIES. The SOFTWARE PRODUCT and any related documentation is provided “as is” without warranty of any kind, either express or implied, including, without limitation, the implied warranties or merchantability, fitness for a particular purpose, or non-infringement. The entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you.

####Fibonacci Heap For the heap data structure, the Fibonacci Heap implementation by Tim Blechmann from the Boost libraries has been utilized. The original source code is available under the Boost License.

####OpenSteer Library This tool utilizes OpenSteer library to run evacuation simulations. The library is released under MIT license.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.


How To: Create a new graticule using VBA and ArcObjects

You need to pick the option that best suits your application. There is one last thing to do before the code is ready to use.

This is really the only major error in converting the code. Choose Add-In Controls adcobjects Categories the category that was defined when creating the add-in.

This code could be improved. This article as a PDF. Not much has changed in the conversion between VBA and the add-in. With a county selected, click the Read Data button on the dialog box.

Learning ArcObjects with VBA and .NET? – Geographic Information Systems Stack Exchange

This is easily fixed by adding import statements at the top of the code. This opens the County Info dialog box. At the very top of the code for the form, above the public class, add three import statements Figure 4. This example requires two references. In the OnClick event, add the following two lines:. In conclusion, even though VBA is gone, with a little refactoring and a good bit of copying and pasting, existing VBA code can be reused in the new.

The Esri online help is very useful. In this example, open the included file called Form1. Search the online help for the article “Walkthrough: Second wizard screen for creating command button.

Copy the subroutine and paste it into the newly created form in the add-in project. Scroll down and pick the word Text.

Watch the video: How to load GMap Direction from database in