Unable to reference Autodesk.AutoCAD.Interop.Common.dll

Unable to reference Autodesk.AutoCAD.Interop.Common.dll

Anonymous
Not applicable
12,589 Views
13 Replies
Message 1 of 14

Unable to reference Autodesk.AutoCAD.Interop.Common.dll

Anonymous
Not applicable
I started a new Windows application C# project in Visual Studio 2005, my intention is to use COM only in this one, not the .NET wrappers. So I added the references like the Autocad 2008 ActiveX and VBA developers guide states:

To fully access AutoCAD automation objects from Microsoft Visual Studio® .NET, create references to the following files:
• The AutoCAD 2008 type library, acax17enu.tlb, located at c:\program files\common files\autodesk shared.
• The AutoCAD/ObjectDBX Common 17.0 type library, axdb17enu.tlb, located at c:\program files\common files\autodesk shared.

After adding the references I have under project references “AXDBLib”, but it has the yellow warning sign over it. The error list has two lines:

Cannot find wrapper assembly for type library "AXDBLib".

The referenced component 'AXDBLib' could not be found.


So what’s the problem and how to fix it? I can get around the reference error using late binding and referencing nothing, but late binding is kind of unnatural with C#.

Using Visual Studio 2005 and Autocad Architecture 2008.
0 Likes
12,590 Views
13 Replies
Replies (13)
Message 2 of 14

jbooth
Advocate
Advocate
If you have Autocad 2008 installed on the developer's machine, you should have the "Autocad 2008 Type Library" in your list of available com references. Clicking on this reference should link over to Autodesk.Autocad.Interop.dll found in your global assembly cache (GAC).

Once this dll is referenced, you should be able to use normal COM procedures to manipulate the Autocad application, provided it is installed/running on the user's machine.
0 Likes
Message 3 of 14

Anonymous
Not applicable
What the VBA docs say on this doesn't apply to .NET projects.

You don't select any files to add the COM interop assemblies, you just select these two items from the COM tab of the Add References dialog:

AutoCAD 2008 Type Library
AutoCAD/ObjectDBX Common 17.0 Type Library

--
http://www.caddzone.com

AcadXTabs: MDI Document Tabs for AutoCAD 2008
Supporting AutoCAD 2000 through 2008
http://www.acadxtabs.com

wrote in message news:5856031@discussion.autodesk.com...
I started a new Windows application C# project in Visual Studio 2005, my intention is to use COM only in this one, not the .NET wrappers. So I added the references like the Autocad 2008 ActiveX and VBA developers guide states:

To fully access AutoCAD automation objects from Microsoft Visual Studio® .NET, create references to the following files:
• The AutoCAD 2008 type library, acax17enu.tlb, located at c:\program files\common files\autodesk shared.
• The AutoCAD/ObjectDBX Common 17.0 type library, axdb17enu.tlb, located at c:\program files\common files\autodesk shared.

After adding the references I have under project references “AXDBLib”, but it has the yellow warning sign over it. The error list has two lines:

Cannot find wrapper assembly for type library "AXDBLib".

The referenced component 'AXDBLib' could not be found.


So what’s the problem and how to fix it? I can get around the reference error using late binding and referencing nothing, but late binding is kind of unnatural with C#.

Using Visual Studio 2005 and Autocad Architecture 2008.
0 Likes
Message 4 of 14

Anonymous
Not applicable
I already tried that, but the result is exactly the same as explained in my first post.
And in both TLB and COM way the AutoCAD 2008 Type Library reference seems to be OK, only the AutoCAD/ObjectDBX Common 17.0 Type Library fails.
0 Likes
Message 5 of 14

Anonymous
Not applicable
Apparently Autodesk.Autocad.Interop.dll is not enough, Autodesk..Autocad.Interop.Common.dll is needed too. I can create AcadApplication, and get the Documents collection, but attempt to use the Open method of the Documents collection results to compile error saying that I need to reference Autocad.Interop.Common.dll.
0 Likes
Message 6 of 14

Anonymous
Not applicable
Do you have multiple versions of CAD installed on your computer. i had some problems with the COM references in my .NET project when i had 2006 and 2007 installed on my machine.
perhaps a repair of AutoCAD is in order.
-Mark Pendergraft
0 Likes
Message 7 of 14

Anonymous
Not applicable
I had 2007 also, just removed it but the reference problem is still the same. Previously i already uninstalled and re-installed 2008, did'nt help either.
0 Likes
Message 8 of 14

Anonymous
Not applicable
Weird... the only way i could get the reference to work was to copy the DLL for GAC to a normal directory (C:\temp in this case) and add the reference using the browse tab.
0 Likes
Message 9 of 14

Anonymous
Not applicable
I have exactly the same problem. At first I installed AutoCAD 2008 and now after installing Inventor this problem occurs. I have two different versions of these DLL and I don't know which onces are the right ones.
0 Likes
Message 10 of 14

Anonymous
Not applicable
Now I solved this problem. I uninstalled AutoCAD 2008 and installed Inventors Mechanical Desktop instead. Message was edited by: thmsfrst
0 Likes
Message 11 of 14

Anonymous
Not applicable
Hi JanneS - I'm having this exact problem. Did you solve this by installation changes or were you able to figure out a more direct solution?

thank you!
0 Likes
Message 12 of 14

Anonymous
Not applicable

I know I'm thread dredging* but this post made my night.  Autodesk.AutoCAD.Interop referenced fine, but not [yada].common.  Used JanneS trick of copying Autodesk.AutoCAD.Interop.Common.dll from GAC to a "normal" folder and now it references ok.  I suspect "real" coders would be horrified, but hey.

 

I've got a bunch of Autodesk products (some with varying versions) installed, possibly was the cause.

 

Cheers JanneS

 

 

* Funny how it's somehow more acceptable to thread dredge if you acknowledge you're doing it  🙂

0 Likes
Message 13 of 14

fieldguy
Advisor
Advisor

Good work! User forums would have substantially less posts if everyone did.

0 Likes
Message 14 of 14

Anonymous
Not applicable

JanneS wrote:
I started a new Windows application C# project in Visual Studio 2005, my intention is to use COM only in this one, not the .NET wrappers. So I added the references like the Autocad 2008 ActiveX and VBA developers guide states:

To fully access AutoCAD automation objects from Microsoft Visual Studio® .NET, create references to the following files:
• The AutoCAD 2008 type library, acax17enu.tlb, located at c:\program files\common files\autodesk shared.
• The AutoCAD/ObjectDBX Common 17.0 type library, axdb17enu.tlb, located at c:\program files\common files\autodesk shared.

After adding the references I have under project references “AXDBLib”, but it has the yellow warning sign over it. The error list has two lines:

Cannot find wrapper assembly for type library "AXDBLib".

The referenced component 'AXDBLib' could not be found.


So what’s the problem and how to fix it? I can get around the reference error using late binding and referencing nothing, but late binding is kind of unnatural with C#.

Using Visual Studio 2005 and Autocad Architecture 2008.


 

 

 

 

 

 

hi JanneS:

i am doing the same thing.but i  don't have  API using com access to autocad . do you have API?

0 Likes