.NET
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic to the Top
- Bookmark
- Subscribe
- Printer Friendly Page
File name
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Hi to all.
I'm trying to save two drawings sequentially with the following code:
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.Runtime
Public Class Class1
<CommandMethod("SaveTwoDrawings")> _
Public Sub SaveTwoDrawings()
Dim doc As Document
Dim strDWGName As String
Dim acDocMgr As DocumentCollection = Autodesk.AutoCAD.ApplicationServices.Application.D
Dim obj As Object
doc = acDocMgr(0)
strDWGName = doc.Name
strDWGName = "c:\MyDrawing#1.dwg"
doc.Database.SaveAs(strDWGName, True, DwgVersion.Current, doc.Database.SecurityParameters)
doc = acDocMgr(1)
strDWGName = doc.Name
strDWGName = "c:\MyDrawing#2.dwg"
doc.Database.SaveAs(strDWGName, True, DwgVersion.Current, doc.Database.SecurityParameters)
End Sub
End Class
While the two drawings are correctly saved in the desired position whith the desired names, only the name of the last drawing is updated ("Drawing2.dwg"--->"MyDrawing#2.dwg"), but the name of the first drawing still remains the original assigned by autocad "Drawing1.dwg", the autocad title bar is not updated too.
Some suggestions?
Thanks
Re: File name
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Hi,
try to use the "Session"-flag for your command-definition:
<CommandMethod("SaveTwoDrawings", Autodesk.AutoCAD.Runtime.CommandFlags.Session)> _
Public Shared Sub SaveTwoDrawings()
...
- alfred -
Alfred NESWADBA
Ingenieur Studio HOLLAUS ... www.hollaus.at
-------------------------------------------------------------------------
Re: File name
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Thanks Alfred.
Tried the suggestion, but still not working.
Re: File name
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Hi Alfred, I modified the code like this (including your suggestion).
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.Runtime
Public Class Class1
<CommandMethod("SaveTwoDrawings", CommandFlags.Session)> _
Public Shared Sub SaveTwoDrawings()
Dim doc As Document
Dim strDWGName As String
Dim acDocMgr As DocumentCollection = Autodesk.AutoCAD.ApplicationServices.Application.D
Dim obj As Object
doc = acDocMgr(0)
acDocMgr.MdiActiveDocument = doc
strDWGName = doc.Name
strDWGName = "c:\MyDrawing#1.dwg"
doc.Database.SaveAs(strDWGName, True, DwgVersion.Current, doc.Database.SecurityParameters)
doc = acDocMgr(1)
acDocMgr.MdiActiveDocument = doc
strDWGName = doc.Name
strDWGName = "c:\MyDrawing#2.dwg"
doc.Database.SaveAs(strDWGName, True, DwgVersion.Current, doc.Database.SecurityParameters)
End Sub
End Class
In this case the routine works fine.
It seems that there is a need to make the document active. When the document is active the doc.Name property is updated.
Using Autocad 2010 32bit, Visual Studio Espress 2008
