Hi,
Ich versuche grade eine
dll dynamisch einzubinden
Hier der
DLL Code
Delphi-Quellcode:
library dll;
uses
SysUtils,Classes;
{$R *.res}
function functionpchar(pc:pchar):pchar;
begin
result:=PChar('
Result ist: '+PChar(pc));
end;
exports
functionpchar;
begin
end.
Und das Programm
Delphi-Quellcode:
...
type
Tfunctionpchar =
function(pc: Pchar): PChar;
function functionpchar(pc: Pchar;
dll:
string): PChar;
function functionstr(str:
string):
string;
...
implementation
...
function functionpchar(pc: Pchar;
dll:
string): PChar;
var Funktion: Tfunctionpchar;
Handle: THandle;
begin
Handle:=LoadLibrary(PChar(
dll));
if Handle <> 0
then begin
@Funktion := GetProcAddress(
Handle,'
functionpchar');
if @Funktion <>
nil then begin
result := Funktion(pc);
end;
FreeLibrary(
Handle);
end;
showmessage('
bis hier geht es');
end;
function functionstr(str:
string):
string;
begin
result:=functionpchar(PChar(str),ExtractFilePath(Application.ExeName)+'
dll.dll');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(functionstr('
test'));
end;
Der Code läuft auch nur kommt eine Zugriffs verletzung
Was mach ich falsch
Vielen Dank für eure Antworten