Announcement

Collapse
No announcement yet.

ADO Zugriff aus DLL heraus

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ADO Zugriff aus DLL heraus

    Hallo,

    wie kann ich eine ADOQuery aus einer DLL aufrufen. Beim Start der Anwendung kommt immer ein Fehler EOleSysError CoInitialize wurde nicht aufgerufen.

    Gruß Georg

  • #2
    Dann mußt Du es aufrufen (wie die Meldung ja auch nahelegt) :-)

    In der Application.Initialize-Funktion (welche in der DPR-Datei wird diese Funktion aufgerufen. Diese ist für die Initialisierung des COM-Subsystemes zuständig.

    Am Ende mußt Du noch CoUninitialize aufrufen.

    Entweder das gewünschte jeweils initialize/finalize-Abschnitt der Entsprechenden Unit aufrufen oder nur in der entsprechenden DLL-Funktion

    Comment


    • #3
      Hallo,

      die DLL soll aus einem C Programm aus aufgerufen werden, daher kann ich kein Application.Initialize aufrufen.

      Kann mir jemand helfen ?

      Gruß Geor

      Comment


      • #4
        Mußt Du auch nicht.

        procedure MyDLLFunction;
        begin
        CoInitialize;
        // ADO-Funktionen
        CoUninitialize;
        end;

        Schau mal in der Win32-Hilfe nach CoInitialize.
        Der Hinweis auf Application.Initialize war nur dafür gedacht, das bei einer normalen Delphi-Exe diese Methode den Aufruf erledigt und deshalb i.d.R. kein gesonderter Aufruf con CoInitialize/CoUninitialze nötig ist

        Comment

        Working...
        X