2016-04-26 8 views
0

Ich arbeite an einem Plugin, mit dem AutoCAD meine verschlüsselten Zeichnungen öffnen kann. Ich möchte vermeiden, die Zeichnung in eine DWG-Datei auf der Festplatte entschlüsseln zu müssen. Die APIs zum Öffnen einer Zeichnung in AutoCAD scheinen jedoch nur mit Dateipfaden zu funktionieren. Gibt es eine andere Möglichkeit, eine Zeichnung/Datenbank in AutoCAD zu laden, ohne eine dwg-Datei auf der Festplatte zu haben?AutoCAD: Öffnen einer Zeichnung/Datenbank aus dem Speicher anstelle einer Datei

Was meine Aufmerksamkeit erregt hat war die

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

Funktion, aber ich konnte keine Informationen über die AcDwgFileHandle Klasse finden. Wenn es nur ein Wrapper für Win32 HANDLE oder so etwas wäre, würde es leicht meine Probleme lösen.

Danke für Ihre Hilfe.

+0

nicht sicher, was Sie mit "Datei im Speicher" meinen, können Sie klären? –

Antwort

0

Wie Sie bereits beantwortet haben there AcDwgFileHandle ist interne Klasse (nicht behandeln Wrapper).

Mit Dependency Wolker können wir einige Funktionen in acdb19.dll finden:

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)) 

Aber leider sind diese Funktionen für Sie nutzlos.

Sie könnten denken, dwgIn dwgOut irgendwie zu ändern. So wird .dwg auf der Festplatte sein, aber bereits verschlüsselt.