How to save a file in DXF?

How to save a file in DXF?

Anonymous
Not applicable
971 Views
6 Replies
Message 1 of 7

How to save a file in DXF?

Anonymous
Not applicable

Please help!

0 Likes
972 Views
6 Replies
Replies (6)
Message 2 of 7

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

is that what you are missing?

   <Runtime.CommandMethod("ADESK_saveAsDxf")> _
   Public Shared Sub ADESK_saveAsDxf()
      Dim tFileName As String = "C:\TEMP\myDxfFileName.DXF"
      Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Database.DxfOut(tFileName, 6, Autodesk.AutoCAD.DatabaseServices.DwgVersion.Current)
   End Sub

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
Message 3 of 7

Anonymous
Not applicable

I used this code:

 

        [CommandMethod("DrawingSaved")]
        public static void DrawingSaved()
        {
            Document acDoc = Application.DocumentManager.MdiActiveDocument;

            Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Database.DxfOut(acDoc.Name, 6, Autodesk.AutoCAD.DatabaseServices.DwgVersion.Current);

        }

 But it's giving error:  Exception was unhandles by user code

 

eFileAccessErr

0 Likes
Message 4 of 7

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

if you take acDoc.Name as name for your DXF-file you will recognize, that it will have included the extension ".DWG", but if you want to save it as DXF you should have DXF as extension 😉

 

   <Runtime.CommandMethod("ADESK_saveAsDxf")> _
   Public Shared Sub ADESK_saveAsDxf()
      Dim tAcadDoc As ApplicationServices.Document = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument
      Dim tFileName As String = tAcadDoc.Name
      If tFileName.ToUpper.EndsWith(".DWG") Then tFileName = Left(tAcadDoc.Name, tAcadDoc.Name.Length - 4) & ".DXF"
      tAcadDoc.Database.DxfOut(tFileName, 6, Autodesk.AutoCAD.DatabaseServices.DwgVersion.Current)
   End Sub

 HTH, - alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
Message 5 of 7

Anonymous
Not applicable

My file was already in the extension. Dxf

🙂 Since yesterday I'm puzzling over it but nothing works 😞

 

It worked using the command line.

 

 

 

 acadDocument.SetVariable("FILEDIA", 0);

 acadDocument.SendCommand("SAVE " + FileTxt.FullName + "\nv\n2007\n16\nyes\n");

 acadDocument.SetVariable("FILEDIA", 1);

 

I was creating a dll just to save, so it is better not to have to create a dll.

 

 

Thank you!

0 Likes
Message 6 of 7

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

>> My file was already in the extension. Dxf

Ok, the more info, the better we can "debug" 😉

 

Well the DXFOUT-function exports the current drawing, but it is not to compare with SAVEAS, it's more like WBLOCK. And for WBLOCK you know, that if you are working on a drawing AA.DWG you cannot start WBLOCK and export some elements to AA.DWG ==> you have to take another filename.

And same situation is to use for DXFOUT, you cannot use the same name as you already have opened.

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
Message 7 of 7

Anonymous
Not applicable

That must be what was wrong then.
Good to know, I'll try!
 Smiley Happy

 

 

0 Likes