我正在开发一个插件,可以让AutoCAD打开我的加密图纸。我想避免将绘图解密到磁盘上的dwg文件。但是,在AutoCAD中打开图形的API似乎只适用于文件路径。有没有其他方法可以在AutoCAD中加载图形/数据库,这不涉及在硬盘驱动器上安装dwg文件?
引起我注意的是
AcDbDatabase::readDwgFile(AcDwgFileHandle * pDwgFile, ...)
功能,但我无法找到有关AcDwgFileHandle类的任何信息。如果它只是Win32 HANDLE或其他东西的包装器,它很容易解决我的问题。
感谢您的帮助。
答案 0 :(得分:0)
正如您已经回答there 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将在磁盘上但已加密。