Community
Civil 3D Customization
Welcome to Autodesk’s AutoCAD Civil 3D Forums. Share your knowledge, ask questions, and explore popular AutoCAD Civil 3D Customization topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Civil 3D versions when using C++ COM

1 REPLY 1
SOLVED
Reply
Message 1 of 2
davidm_adn
552 Views, 1 Reply

Civil 3D versions when using C++ COM

Hi.  I have a C++ unmanaged arx which is for vanilla AutoCAD, but now we got to add some extra functionality if the host application happens to be Civil 3D.  So I've installed Civil 3D 2013, and made an unmanaged C++ arx which uses COM to talk to Civil 3D, which my vanilla arx can load and invoke as & when.  I don't do anything too difficult, just some querying of surface entities, and this works well so far.

 

We need to support Civil 3D 2010 - 2013 (and 2014 very soon I guess).  My vanilla arx's can cover AutoCAD 2010,2011,2012 with one arx and 2013,2014 with another.  I just use the ObjectARX SDK for the earliest version in the 'family', ie 2010 and 2013.

 

Is this the case for Civil 3D, if I am using COM? I suspect not; for Civil 3D 2012 I know I have to #import AecXUiBase70.tlb (amongst others), and for 2011 I think it's AecXUiBase67.tlb.  But maybe can someone clarify that please?  I have access to all the Civil 3D versions I need via my ADN license, but I don't want to download and install them unless I really have to.

 

Thanks for any tips.

1 REPLY 1
Message 2 of 2

Hi,

 

Unfortunately this is required for Civil3D as the .TLBs change between versions, which means rebuild your app for each version.

 

The alternative is use late-binding, which means don't use the .TLBs. This is quite easy in .NET languages, but a little more complicated on C++, so my suggestion is rebuild the .ARXs

 

Some developers just copy the .TLBs between machines, which is not supported and may not work. Also do consider test your application on each version you plan to support. Note that the Civil 3D COM API is being replaced with a .NET API, so some features where removed on newer versions (so testing is strongly recommended).

Regards,



Augusto Goncalves
Twitter @augustomaia
Autodesk Developer Network

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Rail Community


 

Autodesk Design & Make Report