1

我正在开发一个插件,使 AutoCAD 能够打开我的加密图纸。我想避免必须将绘图解密为磁盘上的 dwg 文件。但是,在 AutoCAD 中打开图形的 API 似乎都只适用于文件路径。是否有任何其他方法可以在 AutoCAD 中加载图形/数据库,而不涉及在硬盘上保存 dwg 文件?

引起我注意的是

AcDbDatabase::readDwgFile(AcDwgFileHandle * pDwgFile, ...)

函数,但我无法找到有关 AcDwgFileHandle 类的任何信息。如果它只是 Win32 HANDLE 或其他东西的包装器,它会很容易解决我的问题。

谢谢你的帮助。

4

1 回答 1

0

正如您已经回答的那样 AcDwgFileHandle 是内部类(不是句柄包装器)。

使用 Dependency Wolker 我们可以在 acdb19.dll 中找到一些函数:

enum Acad::ErrorStatus AcDwgFileHandle::close(class AcDwgFileHandle * &)
enum Acad::ErrorStatus AcDwgFileHandle::open(wchar_t const *,class AcDwgFileHandle * &,int)
class AcDwgFileHandle * AcDwgFileHandle::open(wchar_t const *,int,enum Acad::ErrorStatus *,int (*)(int,int,int,int))

但不幸的是,这些功能对你毫无用处。

您可能会想以某种方式更改 dwgIn dwgOut。所以 .dwg 将在磁盘上但已经加密。

于 2016-04-27T08:42:00.320 回答