![]() |
Funktion in Package - Invalid Pointer Operation
Hi,
ich wollte mal ein bisschen mit dem dynamischen Linken von Bibliotheken spielen. Mein Package (Package1) hat eine Unit (Unit1), die wie folgt aufgebaut ist:
Delphi-Quellcode:
Das Testprogramm so:
unit Unit1;
interface function GibAus(sString: string): string; implementation function GibAus(sString: string): string; begin try Result := 'String aus Funktion: ' + sString; except end; end; exports GibAus; end.
Delphi-Quellcode:
Wenn ich das Ausführe bekomme ich auch die Meldung:
[...]
procedure TForm1.Button1Click(Sender: TObject); var PackageModule: HModule; ExecF : function(sString: string):string; begin PackageModule := LoadPackage('Package1.bpl'); if PackageModule <> 0 then begin @ExecF:=GetProcAddress(PackageModule,'GibAus'); try showmessage(ExecF('TestString')); except end; end; UnloadPackage(PackageModule); end; [...] Zitat:
Das ist entweder: 'Invalid Pointer Operation' oder 'Access Violation' Was mach ich falsch? Kennt jemand ein kleines Tutorial, wo das mit den dynamisch gelinkten Bibliotheken erklärt wird? Es sollte eine bpl und keine dll sein?! |
Re: Funktion in Package - Invalid Pointer Operation
Keiner eine Idee?
Hat noch keiner von euch mit bpl's gearbeitet? |
Re: Funktion in Package - Invalid Pointer Operation
Hast du ShareMem eingebunden?
|
Re: Funktion in Package - Invalid Pointer Operation
Nein,
brauch ich die auch bei bpl's oder nur bei dll's? In welche Dateien muss die eingebunden werden? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:08 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