<?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 Add ArcGIS Toolbox Reference - .Net target version of created DLL? in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74857#M1999</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm currently working on an Add-In in which I'll need to do some geoprocessing.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In the ArcObjects samples (&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://resources.arcgis.com/en/help/arcobjects-net/conceptualhelp/index.html#//0001000001z2000000" rel="nofollow" target="_blank"&gt;here&lt;/A&gt;&lt;SPAN&gt;) there's one that show how to queue up multiple geoprocessing tools to run in the background and not have existing data for inputs (e.g. tool2 uses tool1's output).&amp;nbsp; This looks like something I'll need to implement, but when trying it today I hit an issue - some of the tools I need to run are in custom toolboxes so I can only execute them using GP.executeasync(string name, varArray params).&amp;nbsp; I remembered that you can add a reference to an ArcGIS Toolbox in your Visual Studio project.&amp;nbsp; I tried this, but the DLL created from the process has a Runtime version of 4 and I'm working in 3.5...&amp;nbsp; 2 questions about this process:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1.&amp;nbsp; Is there a way to control the .Net version the DLL is compiled against?&amp;nbsp; Is it based on the version tied to the version of Visual Studio?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2.&amp;nbsp; Will users of the Add-In still need the actual .tbx file I created the DLL from &amp;amp; in the exact same file location?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks, Terry&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 16 May 2013 19:55:04 GMT</pubDate>
    <dc:creator>TerryGiles</dc:creator>
    <dc:date>2013-05-16T19:55:04Z</dc:date>
    <item>
      <title>Add ArcGIS Toolbox Reference - .Net target version of created DLL?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74857#M1999</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I'm currently working on an Add-In in which I'll need to do some geoprocessing.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In the ArcObjects samples (&lt;/SPAN&gt;&lt;A class="jive-link-external-small" href="http://resources.arcgis.com/en/help/arcobjects-net/conceptualhelp/index.html#//0001000001z2000000" rel="nofollow" target="_blank"&gt;here&lt;/A&gt;&lt;SPAN&gt;) there's one that show how to queue up multiple geoprocessing tools to run in the background and not have existing data for inputs (e.g. tool2 uses tool1's output).&amp;nbsp; This looks like something I'll need to implement, but when trying it today I hit an issue - some of the tools I need to run are in custom toolboxes so I can only execute them using GP.executeasync(string name, varArray params).&amp;nbsp; I remembered that you can add a reference to an ArcGIS Toolbox in your Visual Studio project.&amp;nbsp; I tried this, but the DLL created from the process has a Runtime version of 4 and I'm working in 3.5...&amp;nbsp; 2 questions about this process:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;1.&amp;nbsp; Is there a way to control the .Net version the DLL is compiled against?&amp;nbsp; Is it based on the version tied to the version of Visual Studio?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;2.&amp;nbsp; Will users of the Add-In still need the actual .tbx file I created the DLL from &amp;amp; in the exact same file location?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks, Terry&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 19:55:04 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74857#M1999</guid>
      <dc:creator>TerryGiles</dc:creator>
      <dc:date>2013-05-16T19:55:04Z</dc:date>
    </item>
    <item>
      <title>Re: Add ArcGIS Toolbox Reference - .Net target version of created DLL?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74858#M2000</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I haven't tried it yet but seems like instead of using this-:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
private Queue&amp;lt;IGPProcess&amp;gt; _myGPToolsToExecute = new Queue&amp;lt;IGPProcess&amp;gt;();
...
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(bufferTool);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(clipTool);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _gp.ExecuteAsync(_myGPToolsToExecute.Dequeue());
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;why not this -&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
private Queue&amp;lt;string&amp;gt; _myGPToolsToExecute = new Queue&amp;lt;string&amp;gt;();
private Queue&amp;lt;IVariantArray&amp;gt; _myGPToolsParams = new Queue&amp;lt;IVariantArray&amp;gt;();
...


&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(bufferTool);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsParams .Enqueue(bufferParams);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(clipTool);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsParams .Enqueue(clipParams);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _gp.ExecuteAsync(_myGPToolsToExecute.Dequeue(),myGPToolsParams.Dequeue());
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm still curious about my 2 questions re: converting the .tbx to a DLL though if anyone has thoughts on that.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Dec 2021 22:54:07 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74858#M2000</guid>
      <dc:creator>TerryGiles</dc:creator>
      <dc:date>2021-12-10T22:54:07Z</dc:date>
    </item>
    <item>
      <title>Re: Add ArcGIS Toolbox Reference - .Net target version of created DLL?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74859#M2001</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Is there a way to control the .Net version the DLL is compiled against?&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You specify the version of the .NET framework to use when you create the project in Visual Studio.&amp;nbsp; You can see what it is, and change if you wish, in the project properties.&amp;nbsp; Just right click on the project in solution explorer and select properties.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 21:10:53 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74859#M2001</guid>
      <dc:creator>RichardWatson</dc:creator>
      <dc:date>2013-05-16T21:10:53Z</dc:date>
    </item>
    <item>
      <title>Re: Add ArcGIS Toolbox Reference - .Net target version of created DLL?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74860#M2002</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Richard,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My Add-In project is targeting 3.5 &amp;amp; that's what it shows in the properties, which is what I thought the Add Toolbox Reference what honor but it doesn't seem to be the case.&amp;nbsp; I think the context menu in Visual Studio is really running the GPAssemblyBuilder.exe in C:\Program Files (x86)\ArcGIS\DeveloperKit10.1\IDEIntegration\VisualStudio\bin.&amp;nbsp; I tried running that via command line but there doesn't seem to be any switches for the output target framework either.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 21:34:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74860#M2002</guid>
      <dc:creator>TerryGiles</dc:creator>
      <dc:date>2013-05-16T21:34:16Z</dc:date>
    </item>
    <item>
      <title>Re: Add ArcGIS Toolbox Reference - .Net target version of created DLL?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74861#M2003</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I haven't tried it yet but seems like instead of using this-:&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;private Queue&amp;lt;IGPProcess&amp;gt; _myGPToolsToExecute = new Queue&amp;lt;IGPProcess&amp;gt;(); ... &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(bufferTool); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(clipTool); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _gp.ExecuteAsync(_myGPToolsToExecute.Dequeue());&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;why not this -&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;private Queue&amp;lt;string&amp;gt; _myGPToolsToExecute = new Queue&amp;lt;string&amp;gt;(); private Queue&amp;lt;IVariantArray&amp;gt; _myGPToolsParams = new Queue&amp;lt;IVariantArray&amp;gt;(); ...&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(bufferTool); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsParams .Enqueue(bufferParams); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsToExecute.Enqueue(clipTool); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _myGPToolsParams .Enqueue(clipParams); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _gp.ExecuteAsync(_myGPToolsToExecute.Dequeue(),myGPToolsParams.Dequeue());&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Why not write a small class MyTool with 2 public properties string Name and IVariantArray Parameters, and then define the queue as Queue&amp;lt;MyTool&amp;gt;?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I'm still curious about my 2 questions re: converting the .tbx to a DLL though if anyone has thoughts on that.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I've been using the ArcGIS Toolbox References in some integration tests, but actually I'm not happy with them, therefore I'm going back to the previous syntax with tool name + IVariantArray. I also observe that the tool DLL uses the .NET runtime 4.0, but what's worse in my case is that the assembly builder seems to hardcode the toolbox location into the DLL. Therefore, if you move the toolbox somewhere else, the DLL won't help you any more.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 18 May 2013 15:50:03 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74861#M2003</guid>
      <dc:creator>FridjofSchmidt</dc:creator>
      <dc:date>2013-05-18T15:50:03Z</dc:date>
    </item>
    <item>
      <title>Re: Add ArcGIS Toolbox Reference - .Net target version of created DLL?</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74862#M2004</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Why not write a small class MyTool with 2 public properties string Name and IVariantArray Parameters, and then define the queue as Queue&amp;lt;MyTool&amp;gt;?&lt;BR /&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;That would work too.&amp;nbsp; May take that idea and add some properties to the class for setting props on the GeoProcessor such as OverwriteOutput as well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BLOCKQUOTE class="jive-quote"&gt; I also observe that the tool DLL uses the .NET runtime 4.0, but what's worse in my case is that the assembly builder seems to hardcode the toolbox location into the DLL. Therefore, if you move the toolbox somewhere else, the DLL won't help you any more.&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for the information.&amp;nbsp; The tbx I was looking at can in fact be in different locations depending if the OS is 32 or 64bit.&amp;nbsp; I'll stick to using the string name &amp;amp; ivariantarray params for now.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Terry&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 May 2013 16:35:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/add-arcgis-toolbox-reference-net-target-version-of/m-p/74862#M2004</guid>
      <dc:creator>TerryGiles</dc:creator>
      <dc:date>2013-05-21T16:35:52Z</dc:date>
    </item>
  </channel>
</rss>

