0

This question already has an answer here:

I am using python in Arcgis 10.2, but it seems Python cannot meet all my developing demands, from the forum, others recommend to use python to access arc objects,but what they mentioned is the old version, so I want to confirm whether I can make it in 10.2, any extension needed? If can, I can use vb.net and c# right? Everybody has experience on it?

marked as duplicate by PolyGeo, Hornbydd, Mapperz May 24 '14 at 15:33

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • Sorry littleleaf, it looks like you've asked a duplicate question. Have a read of my answer anyway and consider taking up .net programming to meet your needs. It is good to have programming as well as scripting; use python for what it's good for and ArcObjects for what it does, it's good to have the choice! – Michael Stimson May 25 '14 at 6:29
  • Hi Michael, thanks for your clarification, may I confirm that ArcGIS 10.2 and above are the same as 10.1 when accessing arcobjects? – littleleaf May 26 '14 at 0:46
  • Each new version has it's own new things but all the previous are still there. 10.2 might prefer Studio Express 2013 but apart from that they're all the same. I still have code written in 9.0/9.1 that works in 10.2.2 though I'm in the process of upgrading them to 10.1. – Michael Stimson May 26 '14 at 0:49
  • Hi Michael, it seems the free visual studio express does not support at ArcGIS 10, I am still trying to find about the 10.2. – littleleaf May 26 '14 at 6:19
  • It does, I am using it at home (10.1). Arc 10.0 had a problem where even though it was on the list it still didn't detect it. see resources.arcgis.com/en/help/system-requirements/10.2/… (SDK requirements) ArcGis 10.2 supports Visual Studio Express 2010 only and 2012 in the professional (paid) versions. – Michael Stimson May 26 '14 at 22:27
0

In this post Combining MS Office with GIS Nathan W suggests that com objects can be accessed from python, after a little digging I found http://www.codeproject.com/Articles/73880/Using-COM-Objects-in-Scripting-Languages-Part-Py which suggests that this is indeed the case.

If you can get an answer from Nathan W he might be able to give you some specific guidance.

C# and VB.net are much better at getting to the insides of ArcMap/Catalog but be prepared for a lot of lines of code and a bit of a learning curve. In python a lot of the methods are very simplified, but as necessary they are rigid. Programming in .NET makes you do all the little steps that are done in python simplistically and gives you the option of changing how it does things to suit your purposes.

I tell people who come to me for a program: I could write it in python in half a day and it will take minutes to run, or I could write it in .net in a day and it will take seconds to run! There is much more to programming than scripting but the end result will run much faster and there is a limit to what is feasible in python.

I recommend visual studio express 2010 like the one found here (I do not endorse this link, but you can find it on google) for ArcGis 10.1, it requires registration to a MSN account but apart from that it's free for non-commercial applications; when it's installed go back to your ESRI install media and install the correct developer kit... It's not installed by default and until you install your programming language it wont know which one to install.

Once that's done start a new ArcMap/ArcCatalog addin following these steps. The developer help that's installed with the SDK is a real source of knowledge with interfaces, samples and relationships; it's not so friendly to start but once you get into it it's great!

If you run into any difficulty with starting out there are plenty of samples only a google away and you could post on GIS.SE.

Not the answer you're looking for? Browse other questions tagged or ask your own question.