<?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 Re: Passing Data Between C# and C++/CLI DLL in ArcObjects SDK Questions</title>
    <link>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374103#M9837</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;To rlwatson-&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have used a C++ ATL COM class from a dll successfully under VS 2005/2008.&amp;nbsp; I cannot successfully create a project in VS2010 with an ATL simple object and have a public method visible from the Interface.&amp;nbsp; The ESRI walk-through applied to VS2005 when ATL was attributed.&amp;nbsp; Now the ATL auto-generated code looks different; using VS to add a method to the class doesn't achieve visibility in the interface.&amp;nbsp; The following snippet is from a VB ArcGIS extension OnClick method for a custom tool.&amp;nbsp; In the VB project (with Interop dll included as a resource), the Interface and class are recognized, but the Launch() method is not (and I see no methods in Object Browser).&amp;nbsp; Back in the C++ dll project, I can see the Launch method on the Interface class in the Object Browser.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Overrides Sub OnClick()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Try&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim show As ICCTShowDlgATL&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; show = New CCTShowDlgATL&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; show.Launch(m_application, 500)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch e As System.Exception&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox("Error from SIE DLL: " &amp;amp; e.Message &amp;amp; vbCrLf &amp;amp; _&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.Source &amp;amp; vbCrLf &amp;amp; _&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Stack Trace: " &amp;amp; vbCrLf &amp;amp; e.StackTrace)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any ideas?&amp;nbsp; I have very little understanding of ATL COM and relied previously on the walk-through to achieve success!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks in advance for your help.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 06 Jul 2012 16:12:24 GMT</pubDate>
    <dc:creator>ErikaDade</dc:creator>
    <dc:date>2012-07-06T16:12:24Z</dc:date>
    <item>
      <title>Passing Data Between C# and C++/CLI DLL</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374101#M9835</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The application we are developing requires many small looping operations to be run on feature classes and these operations must process hundreds of thousands of points in a few seconds.&amp;nbsp; Because of this we decided it might be worth looking into using a Managed C++/CLI proxy class as explained at the end of this page: &lt;/SPAN&gt;&lt;A href="http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//0001000000wm000000" rel="nofollow noopener noreferrer" target="_blank"&gt;http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#//0001000000wm000000&lt;/A&gt;&lt;SPAN&gt; Apparently it can decrease runtimes on repetive operations quite substantially since in C++ you can skip the interop layer between .NET and COM.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I can load my C++/CLI into my C# app fine and access the public methods and what not, but what I can't seem to do is pass any sort of meaningful data between the two.&amp;nbsp; To better illustrate here is some code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;C++ ProxyClass&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
// ProxyClass.h

#pragma once

#include &amp;lt;comdef.h&amp;gt;
#include &amp;lt;comutil.h&amp;gt;

using namespace System;
using namespace System::Runtime::InteropServices;

namespace ArcProxy {

&amp;nbsp;&amp;nbsp;&amp;nbsp; public ref class ArcProxy
&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp; public:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ArcProxy()
&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; ::CoInitializeEx(NULL, COINIT_MULTITHREADED);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //ESRI_SET_VERSION(esriArcGISEngine);
&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; ~ArcProxy()
&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; ::CoUninitialize();
&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; void PointOperations(IFeatureClass % ipPointFeatures, long numPoints)
&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; IFeatureCursor *cur;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARIANT v;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //IFeatureClass* fc = (IFeatureClass *)ipPointFeatures;&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; //fc-&amp;gt;GetFeatures(v, true, &amp;amp;cur);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ipPointFeatures.GetFeatures(v, true, &amp;amp;cur);
&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; //return ipPointFeatures;
&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; int test() { return 2;}
&amp;nbsp;&amp;nbsp;&amp;nbsp; };
}
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Snippet from the C# app (sourceFeatureClass is an IFeatureClass)&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
&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; ArcProxy.ArcProxy proxy = new ArcProxy.ArcProxy();

&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; unsafe
&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; proxy.PointOperations(ref sourceFeatureClass, 100000);
&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; }
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I've tried to mess with a few different approaches after some goggling like using the Marshal class and IntPtr but I can't seem to get it working.&amp;nbsp; C++/CLI dll compiles fine but the C# complains that &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Error&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp; The best overloaded method match for 'ArcProxy.ArcProxy.PointOperations(ref IFeatureClass, int)' has some invalid arguments &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Error&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp; Argument '1': cannot convert from 'ESRI.ArcGIS.Geodatabase.IFeatureClass' to 'ref IFeatureClass' &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Has anyone successfully implemented a C++/CLI proxy class in their application? Or if anyone can provide any insight I would very much appreciate it.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 17:18:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374101#M9835</guid>
      <dc:creator>MattMoyles</dc:creator>
      <dc:date>2021-12-11T17:18:31Z</dc:date>
    </item>
    <item>
      <title>Re: Passing Data Between C# and C++/CLI DLL</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374102#M9836</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I cannot help you with your C++/CLI problem though I have run into situations where using traditional unmanaged C++ is a better choice than using .NET.&amp;nbsp; When I have this problem I simply write a C++ ATL COM based class and use COM interop to communicate with it from .NET.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 01 Sep 2010 21:32:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374102#M9836</guid>
      <dc:creator>RichardWatson</dc:creator>
      <dc:date>2010-09-01T21:32:38Z</dc:date>
    </item>
    <item>
      <title>Re: Passing Data Between C# and C++/CLI DLL</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374103#M9837</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;To rlwatson-&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have used a C++ ATL COM class from a dll successfully under VS 2005/2008.&amp;nbsp; I cannot successfully create a project in VS2010 with an ATL simple object and have a public method visible from the Interface.&amp;nbsp; The ESRI walk-through applied to VS2005 when ATL was attributed.&amp;nbsp; Now the ATL auto-generated code looks different; using VS to add a method to the class doesn't achieve visibility in the interface.&amp;nbsp; The following snippet is from a VB ArcGIS extension OnClick method for a custom tool.&amp;nbsp; In the VB project (with Interop dll included as a resource), the Interface and class are recognized, but the Launch() method is not (and I see no methods in Object Browser).&amp;nbsp; Back in the C++ dll project, I can see the Launch method on the Interface class in the Object Browser.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Overrides Sub OnClick()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Try&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim show As ICCTShowDlgATL&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; show = New CCTShowDlgATL&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; show.Launch(m_application, 500)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch e As System.Exception&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MsgBox("Error from SIE DLL: " &amp;amp; e.Message &amp;amp; vbCrLf &amp;amp; _&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.Source &amp;amp; vbCrLf &amp;amp; _&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Stack Trace: " &amp;amp; vbCrLf &amp;amp; e.StackTrace)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any ideas?&amp;nbsp; I have very little understanding of ATL COM and relied previously on the walk-through to achieve success!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks in advance for your help.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 16:12:24 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374103#M9837</guid>
      <dc:creator>ErikaDade</dc:creator>
      <dc:date>2012-07-06T16:12:24Z</dc:date>
    </item>
    <item>
      <title>Re: Passing Data Between C# and C++/CLI DLL</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374104#M9838</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Here is the book I use as a reference for ATL programming:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://www.amazon.com/ATL-Internals-Working-2nd-Edition/dp/0321159624"&gt;http://www.amazon.com/ATL-Internals-Working-2nd-Edition/dp/0321159624&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I believe that attributed ATL is dead.&amp;nbsp; See appendix D.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I suggest that you focus on trying to create a trivial COM object using C++ and drive it from a simple shell script, i.e. not ArcMap.&amp;nbsp; One you get that right then try consuming it from ArcMap.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The book has some simple walkthroughs that you can go through.&amp;nbsp; It isn't based on VS2010 but the basic flow is the same.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 16:41:43 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374104#M9838</guid>
      <dc:creator>RichardWatson</dc:creator>
      <dc:date>2012-07-06T16:41:43Z</dc:date>
    </item>
    <item>
      <title>Re: Passing Data Between C# and C++/CLI DLL</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374105#M9839</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks very much for replying- the book looks really helpful.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Have you got a simple script you would be willing to share that I might modify to access my class?&amp;nbsp; I haven't done that before.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 18:08:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374105#M9839</guid>
      <dc:creator>ErikaDade</dc:creator>
      <dc:date>2012-07-06T18:08:41Z</dc:date>
    </item>
    <item>
      <title>Re: Passing Data Between C# and C++/CLI DLL</title>
      <link>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374106#M9840</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You can call CreateObject using a variety of the scripting languages.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is Example.wsf:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;job id="main"&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &amp;lt;script language="VBScript"&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; set typeLib = CreateObject("NEScriptUtility.TypeLibrary")&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; typeLib.LoadTypeLibrary("C:\Program Files\Common Files\Infragistics\UltraSuite\MSVBVM60.DLL")&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; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&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; WScript.Echo typeLib.Name&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &amp;lt;/script&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/job&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://en.wikipedia.org/wiki/Windows_Script_File"&gt;http://en.wikipedia.org/wiki/Windows_Script_File&lt;/A&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 18:16:55 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcobjects-sdk-questions/passing-data-between-c-and-c-cli-dll/m-p/374106#M9840</guid>
      <dc:creator>RichardWatson</dc:creator>
      <dc:date>2012-07-06T18:16:55Z</dc:date>
    </item>
  </channel>
</rss>

