问题标签 [objectarx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - Autodesk.AutoCAD.Interop 的文档在哪里?
我查看了 ObjectARX SDK、AutoCAD 帮助、Autodesk 开发人员网络、SO 和更广泛的互联网,但我找不到 Autodesk.AutoCAD.Interop dll 的文档,只有 in-process 的文档。网络 API。
例如,有很多关于 Application 对象的信息:
...但没有关于 Autodesk.AutoCAD.Interop 公开的 AcadApplication 对象的类似信息。在哪里可以找到有关互操作 API 的详细信息?
有一些使用它来启动 AutoCAD 的示例:
http://through-the-interface.typepad.com/through_the_interface/2007/12/launching-autoc.html
如何使用 C# 关闭 Autocad 中的文件以保持 acad.exe 运行?
...ETC。但我正在寻找互操作 API 的对象图、方法描述等,即可用于进程内 .NET API 的信息类型。
c# - 是否有更快的方法来调试 ObjectARX 应用程序?
为了调试 ObjectARX 应用程序,每次尝试调试时都会从 Visual Studio IDE 中启动一个 Autocad 实例( !!! ) 。
这会浪费很长时间,等待 Autocad 加载。所以我的问题是:
有没有办法让 Autocad 在调试会话之间保持打开状态?或者...
是否可以编写一个独立的 .EXE 应用程序来连接到打开的 Autocad 实例并使用它的 ObjectARX 对象/命令,就像 COM 应用程序使用 Interop 对象/命令一样?这些方式也可以更快地调试。
最后一个在执行时会变慢,就像任何进程外应用程序一样,但为了修改代码和调试代码逻辑是即时的。
编辑:NET-RELOAD的使用虽然非常可取,但在这种情况下并不适用,因为它不允许调试。
visual-studio - Visual Studio 项目向导失败
Autodesk ObjectARX 项目向导无法在 Visual Studio Professional 中创建项目。我只在底部的状态栏中看到它失败了。我怎么知道出了什么问题?我检查了 Visual Studio 日志(使用 devenv.exe /log),没有任何报告。而且我没有看到任何其他日志。我还可以做些什么?
我应该补充一点,应该有一个 ui,但什么也没有出现。它立即失败。
.net - 如何正确删除 ACAD DBObjects?
在网上找了一些东西后,我自己发现了这个。花了我一段时间,但对于任何想知道如何做的人,请参见下文。此外,我发布的代码有一个很大的问题 acText 从未在其中声明过。我也错误地将它设置为等于 acadObj。它需要根据具体情况进行设置。下面是我的删除代码。它与打开工作数据库编辑器有关。
如果有人知道如何以更好的方式做到这一点,或者他们是否可以解释为什么这样做会很热门。
.net - AutoCAD ObjectARX .NET 包装器
在 AutoCAD ObjectARX .NET 包装器中,我将如何公开诸如 subWorldDraw() 之类的虚拟函数,以便它们可以被从托管包装器派生的类覆盖?我可以从本机方法调用代理,但是 AcGiWorldDraw 参数呢?
c# - acdbEntGet 和 acdbEntGetX 的 C# 包装器
我需要 C# 中 acdbEntGet 和 acdbEntGetX 的包装器。这些函数位于 accore.dll (AutoCAD 2014) 中,我试过这个:
两个函数的返回值 (a IntPtr) 始终为 0。没有错误或异常。
几乎每个 ObjectARX C++ 函数都包含在 C# 托管库中,但这两个函数没有。我想知道为什么。
哦,有人可能会问我为什么需要这些函数……答案是我想将一个列表返回给 Lisp,它可以直接提供(entmake)
而无需修改。这是通过 acdbEntGet 和 acdbEntGetX 完成的。“手动”创建列表是一个选项,但这不是我想要的(是的,我知道如何在 C# ObjectARX 中创建列表):)
编辑:以下是这些函数在 C++ 中的定义方式
struct resbuf
是 adsdef.h 中定义的链表
ads_name
是两个 64 位整数的数组(如果我没记错的话)
autocad - 在 accoreconsole.exe 中加载自定义 .net dll
我正在尝试使用 netload 命令在 accoreconsole.exe (AutoCAD 2016) 中加载我的自定义 .net dll,但无法加载 dll。
以下是 accoreconsole.exe 的输出:
在加载 dll 之前我还需要做些什么吗?
注意:此 dll 未签名。
纳克斯
c# - ObjectARX 读/写当前未在 AutoCAD 中打开的 .dwg 文件
我试图修改 .dwg 文件并在完成后覆盖 .dwg 文件,所有这些都无需在 autocad 中打开它。我已经阅读了有关 RealDWG 的信息,但这里的目标不是处于独立模式。autocad插件是从autocad运行的,需要修改和写入一些当前项目中没有打开的.dwg文件。到目前为止,我创建了一个数据库对象并将 .dwg 文件读入其中,但是当我想重写它时出现错误。这是它在 C# 中的代码,
错误输出:
我找到了解决方案,所以我将把新代码放在这里......
c# - AutoCAD中如何处理序列化和句柄
我想序列化 xml 文件和(其属性)中的块引用句柄。所以我在初始化时存储这个值:
但是当我在 AutoCAD 中选择 blockReference 时,句柄发生了变化。
我是否正确使用了句柄?
c# - 如何设置常量属性AttributeReference?
是否可以更改 AttributeReference 的 Constant 属性?(属性 IsConstant 是只读的)