.NET
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Load dll-files in Acad2013

10 REPLIES 10
SOLVED
Reply
Message 1 of 11
stefan.hofer
4221 Views, 10 Replies

Load dll-files in Acad2013

Someone already tried to load VB dll's in Acad2013? 

They dont work for me - no message and no error, nothing happens.

 

in 2012 they worked well.

10 REPLIES 10
Message 2 of 11

Hi,

 

do you mean VB6 dll's oder VB.NET dll's

Have you set new references (according to AutoCAD 2013/19.0) before you compiled the DLL's?

 

A little bit little, your info 😉

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
Ingenieur Studio HOLLAUS ... www.hollaus.at ... blog.hollaus.at ... CDay 2024
------------------------------------------------------------------------------------
(not an Autodesk consultant)
Message 3 of 11

ahhhh

you'r right i have to rebuild my scripts with the r19 references...

i hope this works - i get errors in my code with the new references.

 

thanks

Message 4 of 11

Hi,

 

>> i get errors in my code with the new references

Yes, there are some modifications necessary to your code as there are some moves of functions/properties to different DLLs/different namespaces. But as long as we don't see what error you have we can't do anything for you 😉

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
Ingenieur Studio HOLLAUS ... www.hollaus.at ... blog.hollaus.at ... CDay 2024
------------------------------------------------------------------------------------
(not an Autodesk consultant)
Message 5 of 11

ok, one error left...

    Public ReadOnly Property ThisDrawing As AcadDocument
        Get
            Return   Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.AcadDocument
        End Get
    End Property

 msg:

AcadDocument is not a member of Autodesk.AutoCAD.ApplicationServices.Document

Message 6 of 11

Hi,

 

one global change you have to do is to add a new DLL to the references:

AcCoreMgd.dll

 

To your statement getting asscess to the COM-based AcadDocument you have to use this way:

 

Dim tAcadDoc as ApplicationServices.Document
Dim tAcadDocCOM as Interop.AcadDocument

tAcadDoc = ApplicationServices.Application.DocumentManager.MdiActiveDocument

tAcadDocCOM = CType(ApplicationServices.DocumentExtension.GetAcadDocument(tAcadDoc), Interop.AcadDocument)

 

HTH, - alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
Ingenieur Studio HOLLAUS ... www.hollaus.at ... blog.hollaus.at ... CDay 2024
------------------------------------------------------------------------------------
(not an Autodesk consultant)
Message 7 of 11

Ty for your help, but i have a other problem now LOL Smiley Sad

 

EDIT:

OK, i updated my project to NETframework 4.0... seems to work now. Thank you very much!

Message 8 of 11
stefan.hofer
in reply to: stefan.hofer

To get "ThisDrawing" i use

Return DocumentExtension.GetAcadDocument(Application.DocumentManager.MdiActiveDocument)

 now.

 

if someone have the same problem...

Message 9 of 11

Thanks Alfred,

 

DocumentExtension worked for me.

I have to make a code of my ex-colleague usable for AutoCAD 2015, so i don't have much experience with the code.

The problem is that  he declared tAcadDoc as editor.

If i use your code i wont get that error anymore (tAcadDoc --> doc1) (tAcadDocCOM --> ed) but it gives me extra errors after it.

 

Dim ed as ApplicationServices.Document

Dim doc1 as Interop.AcadDocument

 

ed = ApplicationServices.Application.DocumentManager.MdiActiveDocument

 

doc1 = CType(ApplicationServices.DocumentExtension.GetAcadDocument(ed), Interop.AcadDocument)

 

 

Old code:

  Dim doc1 As Autodesk.AutoCAD.Interop.AcadDocument = Application.DocumentManager.MdiActiveDocument.AcadDocument

            Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor

 

 

Because ed is now declared as ApplicationServices.Document, i can't use for example ed.WriteMessage because it's not declared as editor anymore:

 

ed.WriteMessage(vbCrLf & "Initializing - Loading User Preferences - ST-CadCommands." & vbCrLf)

 

 

I tried to declare ed as editor but then it says that it can't convert ApplicationServices.Application.DocumentManager.MdiActiveDocument to EditorIput.Editor

 

I have added accoremgd, acdbmgd, AcDx, Acmgd, AutoCAD, Interop, Interop.Common and AXDBLib to the references

 

Can you help me further?

 

Arjan

 

 

 

 

 

 

 

 

Message 10 of 11

Dim doc As Document = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument
Dim db As Database = doc.Database
Dim ed As Editor = doc.Editor

 try this...

Message 11 of 11

Thank you very much:)

That totally worked for me!

 

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

Post to forums  

Autodesk DevCon in Munich May 28-29th


Autodesk Design & Make Report

”Boost