TOleContainer lädt nicht das native Format



  • Moin zusammen,

    Ich benötige die Möglichkeit mit dem TOleContainer gespeicherte Docs/Session oder wie man das nennen möchte zu laden. Dabei liegen die Dateien im Format vor, welches durch OleContainer->SaveAsDocument() erzeugt werden. In fast allen diesen Dateien ist das Grundobjekt "Microsoft Forms 2.0 Frame" welches aus einem Programm exportiert werden, auf das ich keinen Einfluss hab.

    Als Test benutze ich ein einfaches Bitmap, welches ich zur Designtime reinmale. Dann mit SaveAsDocument speichern und nun krampfhaft durchprobieren. Im "ActiveX Control Test Container" vom VisualStudio wird das gespeicherte Bild und auch die Exporte angezeigt. Nur wenn ich LoadFromFile/-Stream des OleContainers nehme gibt es Fehler:

    OldStreamFormat = true: Im Project Test.exe ist eine Exception der Klasse EOleSysError mit der Meldung '"%1" ist bereits vorhanden' aufgetreten.
    OldStreamFormat = false: Im Project Test.exe ist eine Exception der Klasse EOleError mit der Meldung 'Ungültiges Stream-Format' aufgetreten.

    Hab es auch schon erfolgreich mit

    IStorage * OleStorage;
    HRESULT hResult = StgOpenStorage(filename.c_bstr(), NULL, STGM_READ| STGM_SHARE_DENY_WRITE, NULL, 0, &OleStorage);
    

    in das IStorage-Object laden können. Nur wie bekomme ich dies in den OleContainer?

    Gruß
    yasrick


Anmelden zum Antworten