<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic ArcObjects Books for 10.0 (where?????) in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752627#M19962</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am looking to create from scratch an ArcMap extension using .NET. Looking for books that detail the process. So far I have found nothing that will help me become adjusted to the .NET way of creating an extension. I have some help from tech support and some list users but wanted something more as an official reference. Anyone know of any good books I can take a look at?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As a side note I think I can sludge my way through and create a sample extension. But what I want to do is understand each step of the process. For example there are several extension types I can create and I can add several types of buttons to my toolbar. I have yet to find a good reference that explains each option and where and why to use each type.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;any help is appreciated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;AGP&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 04 Oct 2012 03:24:10 GMT</pubDate>
    <dc:creator>AbelPerez</dc:creator>
    <dc:date>2012-10-04T03:24:10Z</dc:date>
    <item>
      <title>ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752627#M19962</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am looking to create from scratch an ArcMap extension using .NET. Looking for books that detail the process. So far I have found nothing that will help me become adjusted to the .NET way of creating an extension. I have some help from tech support and some list users but wanted something more as an official reference. Anyone know of any good books I can take a look at?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As a side note I think I can sludge my way through and create a sample extension. But what I want to do is understand each step of the process. For example there are several extension types I can create and I can add several types of buttons to my toolbar. I have yet to find a good reference that explains each option and where and why to use each type.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;any help is appreciated.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;AGP&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Oct 2012 03:24:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752627#M19962</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2012-10-04T03:24:10Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752628#M19963</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Abel,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Whilst it's no book it's worth looking on the developer blog that esri runs.&amp;nbsp; I found this page:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://blogs.esri.com/esri/arcgis/2010/05/05/add-ins-for-arcgis-desktop-10/"&gt;http://blogs.esri.com/esri/arcgis/2010/05/05/add-ins-for-arcgis-desktop-10/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There used to be a really good book explaining ArcObjects using VBA, but that's been made pretty much redundant now as ESRI are removing all support for VBA.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;But ultimately you need to look at the help files and their samples and bash your head against a brick wall until it all works &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Duncan&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Oct 2012 14:25:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752628#M19963</guid>
      <dc:creator>DuncanHornby</dc:creator>
      <dc:date>2012-10-04T14:25:16Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752629#M19964</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I've looked at that article, I've looked in the Help, I've looked at the samples, I've posted on the mailing list. Yet some of it is still not explained. In creating an extension there are many more choices than a straight add-in. This is where I am lacking information. I know about the book but as you stated it's for VBA and that's gone. ArcGIS10 has been out for what 2 years and still no programming books from ESRI Press? Hard to believe.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Oct 2012 14:33:28 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752629#M19964</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2012-10-04T14:33:28Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752630#M19965</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;What are some of the extras that you'd like to include in your extension?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Oct 2012 14:54:40 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752630#M19965</guid>
      <dc:creator>KenBuja</dc:creator>
      <dc:date>2012-10-04T14:54:40Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752631#M19966</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Not extras but the options presented for adding say a button are confusing and there is no reference that I could find to describe each option. Same with the extension itself. there are different ways to create an extension with little info on when you might consider one over the other. I know the folks here could explain it. My need is to have an official reference that I can use today, in a couple weeks, or in a couple months once I've forgotten where all the forum post are at.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I can hack my way through it, no problem. I just want a reference that i can use just like any other programming environment.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Oct 2012 14:59:05 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752631#M19966</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2012-10-04T14:59:05Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752632#M19967</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I think the last time there was a book on ArcObjects was 8.something.&amp;nbsp; I don't see another book on AO coming out any time.&amp;nbsp; I used to hate those books, spending countless hours doing keyword searches on the pdf.&amp;nbsp; The help has a lot in it but I had to get used to how it was organized.&amp;nbsp; Mostly I learned by looking at examples and trying things myself.&amp;nbsp; The following has a bunch of info on extensions:&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Creating_an_application_extension/00010000001v000000/"&gt;http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Creating_an_application_extension/00010000001v000000/&lt;/A&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Oct 2012 18:20:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752632#M19967</guid>
      <dc:creator>AlexanderGray</dc:creator>
      <dc:date>2012-10-04T18:20:38Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752633#M19968</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Yeah I think it was ArcObjects at 9 with VBA. Good source but obviously I need to move on from VBA. So reading all the articles I think I know how to start, its just some pieces are just a mystery. Here is what I've gathered from my time with tech support (which I asked and she said there was really no article on how to do this but this is the way it's done):&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. Open a new project in Visual Studio (VB2010 in my case)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2. Select the .NET Framework 3.5 for our filter, select the template ArcGIS&amp;gt;Extending ArcObjects, then select Class Library (ArcMap)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;3. In the ArcGIS Project Wizard add all references. We can remove the ones we don't use later.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;4. Delete the class that's generated. we will not need it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;5. Right-click on Project and Add&amp;gt;New Item. Under ArcGIS&amp;gt;Extending ArcObjects there are 11 choices. Here lets say I can choose between Application Extension (Desktop) or Just-In-Time Extension (Desktop). What are the pros and cons of using each one? How would I go about determining how I should create my extension? The one I have written in VB6 there was only one way to create it. I'm not sure how I can determine which type will suit my needs. So I just pick JIT for the example. Now I get another option list with 8 choices. Blank JIT extension (1 for each ArcGIS application) or Configurable JIT extension (1 for each ArcGIS application). I know I choose ArcMap but what type of JIT do I choose and what determines why I would choose that type? I choose Configurable JIT extension (ArcMap)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;6. Go back and do the same and Add&amp;gt;New Item and choose Base Toolbar so we have a toolbar as our base. A list of 5 options are given. Obvious choice here is Desktop ArcMap. What happens if I choose another option?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;7. Do this again with Add&amp;gt;New Item and add controls such as Base Commands which are buttons. Once I select Base Command I get a list with 10 options. I choose Desktop ArcMap Command. This one seems the obvious choice but what does it really do and what do the other options do?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;8. Write the code. Typically I will do this on a buttons OnClick event. The code will actually reside in separate modules.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;9. Compile and test in ArcMap. In My Project in the Debug section we can add the location of ArcMap to the Start external program option and it should start up ArcMap after the compile for testing and debugging.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;10. Finally after testing and compiling a release. To distribute we need to use ESRIRegAsm on the end users computer to register the DLL and categories (???) Not sure about this one. What is the standard location to install the assembly?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So to actually make the extension I can do it. I think I have the pieces. But there are a lot of options which just don't make sense to me or I am not sure what to look at to determine which is the best option for me. By process of elimination I can cut the choices down (I don't need any ArcGlobe or ArcScene stuff) but the ones that could be applicable I am just not sure what to select.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Appreciate all your help guys and gals.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Abel&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 04 Oct 2012 19:23:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752633#M19968</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2012-10-04T19:23:29Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752634#M19969</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Commands, tools and extensions can work with different applications, ArcMap, ArcCatalog, Engine etc.&amp;nbsp; You get to choose which one on creation or make it generic across applications, I think you got that part.&amp;nbsp; For just In Time extensions, the "on create" doesn't happen when ArcMap starts up, only when it is needed.&amp;nbsp; This makes ArcMap start up faster but you have to be mindful of when your extension gets initialized.&amp;nbsp; The second option is what application (so ArcMap) and configurable.&amp;nbsp; Configurable extensions get placed in the ArcMap/tools/extension menu and you can turn it on and off like other ESRI extensions like Spatial analyst.&amp;nbsp; Blank extension don't have that option and are assumed always on.&amp;nbsp; So for configurable extension, IExtensionConfig gets implemented and stubbed out.&amp;nbsp; That is where the code that happens when you turn the extension on and off is.&amp;nbsp; IPersistVariant is needed to save data with the extension.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;BaseToolbar has very few options, basically just the applications it is registered with, Same for basecommand except there are more types of commands based on the types of application they are supposed to interact with.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Regardless of which type you choose, you can changed it in the com registration functions but choosing the right one makes all that stuff happen.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So... Step 1 is identify the type or types of applications you need to do.&amp;nbsp; Making a command to work in ArcMap and Engine and Globe is all well and good but extra care needs to be taken to interact only with interfaces common to all of them.&amp;nbsp; If you don't need to, don't do it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;As far as using JIT extensions, unless performance is a major consideration or if you extension takes a really long time to start (maybe retrieving data from a database or network) and it is not used often, I say don't bother.&amp;nbsp; Generally if you build your own extension, its' because the users want to use it all the time, so the performance hit to start the extension will happen anyway, differing it won't gain much.&amp;nbsp; For ESRI extensions it made a lot of sense because users weren't always using 3D analyst, for example, every session.&amp;nbsp; Also if start-up times are a big deal, you might want to put some time metrics in to figure out if the JIT really makes a difference.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Oct 2012 19:54:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752634#M19969</guid>
      <dc:creator>AlexanderGray</dc:creator>
      <dc:date>2012-10-05T19:54:49Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752635#M19970</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks guys, I went ahead and started the process and it was actually not as bad as I thought. I think I was overwhelmed with the amount of info available. I'm well on my way to do a complete conversion. Couple questions:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1. For the class for the main entry there is a property for &lt;/SPAN&gt;&lt;STRONG&gt;ProductName &lt;/STRONG&gt;&lt;SPAN&gt;and one for &lt;/SPAN&gt;&lt;STRONG&gt;Name&lt;/STRONG&gt;&lt;SPAN&gt;, The ProductName it says is a friendly name shown in the extensions dialog. For Name it says a string to uniquely identify extension. I think I get ProductName but for Name do I need to make it like a GUID or something else thats easily recognizable like MyCompany.MyDepartment.MyExtension? Im not certain all the places these two properties will get used. The only thing that got me thinking about this was that I have the old VB6 extension loaded and I'm also testing the new .NET extension and wondering if there is a case where the two may clash because of similar properties.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;2. Same thing for the command buttons. They have a &lt;/SPAN&gt;&lt;STRONG&gt;category&lt;/STRONG&gt;&lt;SPAN&gt;, and a &lt;/SPAN&gt;&lt;STRONG&gt;name&lt;/STRONG&gt;&lt;SPAN&gt;. The category says its localizable and used in the Customize Toolbar&amp;gt;Commands section of ArcMap. The name says its a unique id, non-localizable. So what should i lean towards here? Like above a GUID or one based on my company? These seem to also have a possibility to clash with the older extension.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;3. Going to the Extensions dialog and unclicking my extension does not disable the extension. On my older VB6 extension if you unclicked it in the Extensions dialog the entire extension toolbar was disabled. Comparing the two projects I cant see what handles this event.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;AGP&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;AGP&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Oct 2012 21:09:10 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752635#M19970</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2012-10-15T21:09:10Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752636#M19971</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;1&amp;amp;2 Your components already have a GUID in the COM section.&amp;nbsp; You are meant to give a unique but readable (by the developer) name.&amp;nbsp; I usually put ProjectName_ClassName.&amp;nbsp; Keep them unique though so avoid reusing the names from your VB6 projects.&amp;nbsp; The category, caption, tool tip, etc. usually goes in the project resource file.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;3.&amp;nbsp; In your commands, you can override the Enabled property.&amp;nbsp; Get a reference to your extension in the command, check the state of the extension and return false if the extension is not enabled.&amp;nbsp; Make sure you keep the reference to the extension to avoid constantly looking it up.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 16 Oct 2012 13:23:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752636#M19971</guid>
      <dc:creator>AlexanderGray</dc:creator>
      <dc:date>2012-10-16T13:23:24Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752637#M19972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;ok I've been looking at it. I'm making progress. I'm not certain about the turning the extension off/on as I don't remember doing that in the VB6 model. There has got to be one setting at the toolbar level rather than the button level.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;AGP&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 29 Oct 2012 18:48:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752637#M19972</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2012-10-29T18:48:38Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752638#M19973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Buttons can be moved from one toolbar to another very easily, go into customize mode, move the button to another toolbar.&amp;nbsp; Having the enabled property on the toolbar level wouldn't make sense for that reason.&amp;nbsp; The property is on the command.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 29 Oct 2012 19:12:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752638#M19973</guid>
      <dc:creator>AlexanderGray</dc:creator>
      <dc:date>2012-10-29T19:12:16Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752639#M19974</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You are right. I guess I never paid attention to that. I thought my toolbar was locked in.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;AGP&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 29 Oct 2012 19:35:57 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752639#M19974</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2012-10-29T19:35:57Z</dc:date>
    </item>
    <item>
      <title>Re: ArcObjects Books for 10.0 (where?????)</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752640#M19975</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Ok I think I get it now but information is really scattered and unless you know what you are looking for its hit and miss. So in VB6 I used to use the &lt;/SPAN&gt;&lt;STRONG&gt;ICommand_Enabled&lt;/STRONG&gt;&lt;SPAN&gt; event in each command for enabling/disabling the button. from what I have read, you now have to over-ride the Enabled() event of the button. So really I keep local variables for my basic elements, then assign them at OnCreate, and toggle the button at Enabled(). For each command button something like:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_application As IApplication
&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_mxdocument As IMxDocument
&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_map As IMap&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; Private m_pExt As IExtensionConfig 

&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Overrides Sub OnCreate(ByVal hook As Object)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not hook Is Nothing Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_application = CType(hook, IApplication)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_mxdocument = CType(m_application.Document, IMxDocument)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_map = m_mxdocument.ActivatedView.FocusMap&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_pExt = CType(m_application.FindExtensionByName("myExt.extMain"), IExtensionConfig) 

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'blah
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub

&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Overrides ReadOnly Property Enabled() As Boolean
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Get
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_mxdocument = CType(m_application.Document, IMxDocument)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_map = m_mxdocument.ActivatedView.FocusMap&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If (m_pExt IsNot Nothing) Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If (m_pExt.State = esriExtensionState.esriESEnabled And m_map.LayerCount &amp;gt; 0) Then
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Enabled = True
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Enabled = False
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Enabled = False
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Get
&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Does that look about right? Couple things..In the samples I have looked at they use ActivatedView instead of ActiveView. I've read the documentation and still dont get how you use each one or how they are different. Also, notice above that in the Enabled routine I am getting a reference to the document and map again, even though I have already got them at the OnCreate event. Well it turns out an issue I had in my VB6 project also happens here. There are two ways to open a map 1)by double-clicking on the MXD in Windows Explorer and 2)by selecting the map through the ArcMap Dialog box that pops up when you open up ArcMap on its own. Well when you do #2 the variables that hold the document and map get lost. You have to re-get them on the Enabled event. Why does this happen? Is it a bug? ESRI Tech support knows about it as I reported it some time ago. If it is a bug it has not been resolved as of 10.0. I haven't tested with 10.1 as I haven't moved to that yet.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So there it is. Please feel free to comment as to my progress. Its slow but in the end it will take me through another 10 years I hope with this extension.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;AGP&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 07:57:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/arcobjects-books-for-10-0-where/m-p/752640#M19975</guid>
      <dc:creator>AbelPerez</dc:creator>
      <dc:date>2021-12-12T07:57:03Z</dc:date>
    </item>
  </channel>
</rss>

