获取图形属性externa
你好:在这里度过了一上午的大部分时间http://docs.autodesk.com/ACD/2010/ENU/AutoCAD%20.NET%20Developer's%20指南/索引。html和无处可去,我张贴这个线程。
我试图指向AutoCAD图形,并从中获取一些系统变量信息,以应用于外部SQL Server数据库。代码非常简单,如下所示:
GetInternalACADData(fil)
fil是文件名及其完整路径。当我运行代码时(我将在最后展示),我得到一个未处理的FileNotFoundException-找不到指定的模块。(HRESULT的例外:0x8007007E)。奇怪的是,在后续代码中尝试执行有关文件的任何操作之前,就会发生此错误:
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.EditorInput
Imports Autodesk.AutoCAD.Runtime
Module ACAD_Functions
PublicSub GetInternalACADData(ByVal fil AsString)
Dim acCurDb As Database = New Database(False, True)
acCurDb.ReadDwgFile(fil, System.IO.FileShare.Read, True, "")
Dim strString As String = acCurDb.Tdupdate.ToString
EndSub
EndModule
如果您对此有任何想法,以及关于使用AutoCAD API的任何其他信息,请告诉我。
非常感谢。 尝试像这样将类添加到项目中
只需在接下来的3行中更改项目名称和类名:
<Assembly: CommandClass(GetType(MyProject.MyClass))>
Namespace MyProject
Public Class MyClass
更改代码中的文件名:
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.EditorInput
Imports Autodesk.AutoCAD.Geometry
<Assembly: CommandClass(GetType(MyProject.MyClass))>
Namespace MyProject
Public Class MyClass
<CommandMethod("ReadFileTest", "rft", CommandFlags.Session Or CommandFlags.Modal)> _
Public Sub TestInternalData()
GetInternalACADData("C:\Test\WorkingDrawing.dwg")
End Sub
Public Sub GetInternalACADData(ByVal fil As String)
Dim acCurDb As Database = New Database(False, True)
acCurDb.ReadDwgFile(fil, System.IO.FileShare.Read, True, "")
Dim strString As String = acCurDb.Tdupdate.ToString
acCurDb.CloseInput(True)
acCurDb.Dispose()
MsgBox(strString)
End Sub
End Class
End Namespace
~'J'~ 谢谢,但是没有帮助。无论如何,这个类已经在它自己的模块中了。我想知道DLL没有正确映射是否有问题,尽管我可以在Windows 7-64位和Windows XP-32位中产生错误botn。
这些进口产品都很好用。我用于AutoCAD 2010的文件引用是acdbmgd。dll和acmgd。dll。不确定这是否正确,尽管我在某处读到它是正确的。可能有一个问题,我需要更多的dll的依赖。如果你知道那些可能是什么,请告诉我。
再次感谢! 对不起,朋友,
我对这个问题一无所知
也许其他人会更好地解释你
我担心我英语不好,会把你引向错误的方向
当做
~'J'~ 该线程的描述“从外部获取图形属性–问题”的确切含义是什么?我问的原因是一个外部。NET exe必须使用不同的工具集与AutoCAD交互。NET dll在AutoCAD中运行。
在调试期间,exe可能会立即引发异常,类似于您所描述的。 那么,我应该使用什么参考文献呢?这是因为intellisense功能强大,可以显示所有系统变量以及人们希望在AutoCAD中看到的其他内容?
目前,我正在使用acdbmgd和acmgd,我需要的导入似乎可以工作。是否需要更多的参考资料,或者这些是错误的?
谢谢 下图显示了从外部EXE访问AutoCAD所需的参考。截图是在我在Visual Studio 2010中打开此线程第17页的解决方案文件时捕获的(实际上,一些参考必须从该附件中更新)。
http://www.cadtutor.net/forum/showthread.php?39166
https://www.cadtutor.net/forum/uploads/monthly_2012_03/References.jpg.cbb51d053d5f43f310cb5a0c46fa839f.jpg
页:
[1]