Also, wenn ich es so mache:
Delphi-Quellcode:
procedure TfrmMainHost.btnLoadPluginsClick(Sender: TObject);
begin
try
LoadPlugin(ExtractFilePath(ParamStr(0)) + '
Plugin01.dll');
FHost := (frmMainHost
as IHost);
FPlugin.Execute(FHost);
except
on E:
Exception do
ShowMessage(E.
Message);
end;
end;
bekomme ich keine
AV. Allerdings hab eich jetzt ein Folgeproblem:
Delphi-Quellcode:
procedure TPlugin.Execute(Host: IHost);
var
Buffer: array [0..255] of Char;
begin
//SendMessage(Host.Handle, WM_GETTEXT, sizeof(Buffer), Integer(@Buffer));
// MessageBox(Host.Handle, PChar(IntToStr(Host.Handle)), 'Plugin MessageBox', MB_ICONINFORMATION);
MessageBox(0, 'Test', 'Plugin MessageBox', MB_ICONINFORMATION);
end;
greife ich in der Execute-Methode nicht auf
Host.Handle zu, sehe ich die Messagebox. Benutze ich aber
Host.Handle, wird die Messagebox nicht angezeigt.