![]() |
DLL-load produziert Fehler mit THandleComponent
Ich verwende Delphi7 und damit habe ich ein DLL geschrieben und schliesslich fehlerfrei compiliert. Dann eine kleine Testanwendung, welche jedoch bereits bei LoadLib dieser DLL grob auf die Nase fällt: "THandleComponent existiert bereits" heisst es. Well, das hilft mir leider überhaupt nicht weiter.
![]() Hat mir jemand einen Tip? Danke und Gruss - bubuu |
Re: DLL-load produziert Fehler mit THandleComponent
Das wird etwas schwer ohne den Code der Dll zu kennen
|
Re: DLL-load produziert Fehler mit THandleComponent
Du verwendest anscheinend die VCL in der DLL und EXE.
Diese VCL registriert beim System/Windows (programmweit) einige Komponenten und diese Registrierung kann nur einmal geschehen. Darum meckert die DLL auch, weil sie ihre eigene THandleComponent nicht registrieren kann. |
Re: DLL-load produziert Fehler mit THandleComponent
Ja, die DLL enthält Formulare und auch eine zusätzlich in Delphi7 installierte Komponente(ApdComPort1 von AsyncPro V5.00). Offenbar ist letztere das Problem. Jedenfalls: Im von mir erstellten Code wird (von mir) nirgends ein solcher Typ verwendet. Aber offenbar irgendwo in der DLL und auch irgendwo in den "Gedärmen" meiner Testapp. Wie umschiffe ich das?
|
Re: DLL-load produziert Fehler mit THandleComponent
Das Problem kommt mir irgendwie bekannt vor... ich weiß nicht mehr ob es reichte das vcl packages aus dem Kompilat zu nehmen in den Projekteigenschaften damit sich die beiden Module die nicht mehr teilen.
|
Re: DLL-load produziert Fehler mit THandleComponent
Ich habe festgestellt, dass THandleComponent in QTypes definiert wird (Murphys Law: Read Help). Und tatsächlich: In einer meiner Units die vom DLL und auch vom DLL_Aufruf-Programm verwendet wird, steht ein (inzwischen überflüssiges) "uses QTypes". Das raus gekippt und nun rattert der LoadLibrary-Call durch. Allerdings findet mein Programm dann die verlangte Routine per GetProcAddress nicht, aber das wird schon werden.
Danke für eure Unterstützung und schönen Abend noch - bubuu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz