Moin,
ich spiele grade ein wenig mit Plugins rum, bzw. versuche es, denn ich bleibe bei der dll hängen. Und zwar steht im Lexikon zur Plugin-DLL im Beispiel Code folgendes:
Zitat{$R *.res}
Dies erfordert, so weit ich weiß, eine Resource Datei. Beim kompilieren zeigt sich dann eine Fehlermeldung, dass Lazarus keine Resource Datei findet (s. Anhang)... Auch durch wegnehmen jenes Codes ist das Problem nicht gelöst (s. Anhang). Es kommen eben nur andere Fehlermeldungen und in größerer Stückzahl...
Hier noch der Code:
Code
- library IBIS_Berlin.dll;
- uses
- SysUtils,
- Dialogs,
- Classes,
- TestU in 'TestU.pas'{Form1};
- {$R *.res}
- procedure PluginStart(AOwner: TComponent); stdcall;
- begin
- Form1 := TForm1.Create(AOwner);
- Form1.Show;
- end;
- procedure PluginFinalize; stdcall;
- begin
- Form1.Free;
- end;
- procedure ReceiveVarString(varindex: word; value: shortstring); stdcall;
- begin
- case varindex of 0:
- begin
- form1.Label2.Caption := floattostrF(value, ffFixed, 5, 1);
- form1.Gauge1.Progress := round(value);
- end;
- end;
- end;
- procedure OnConnectingVehicle(name: shortstring); stdcall;
- begin
- Form1.Caption := name;
- end;
- procedure OnUnconnectingVehicle; stdcall;
- begin
- Form1.Caption := 'no bus loaded';
- end;
- function SetButton(eventindex: word): boolean;
- begin
- case eventindex of 0:
- result := Form1.button1_pressed;
- end;
- case eventindex of 1:
- result := Form1.button1_pressed;
- end;
- case eventindex of 2:
- result := Form1.button1_pressed;
- end;
- case eventindex of 3:
- result := Form1.button1_pressed;
- end;
- case eventindex of 4:
- result := Form1.button1_pressed;
- end;
- case eventindex of 5:
- result := Form1.button1_pressed;
- end;
- case eventindex of 6:
- result := Form1.button1_pressed;
- end;
- case eventindex of 7:
- result := Form1.button1_pressed;
- end;
- case eventindex of 8:
- result := Form1.button1_pressed;
- end;
- case eventindex of 9:
- result := Form1.button1_pressed;
- end;
- case eventindex of 10:
- result := Form1.button1_pressed;
- end;
- case eventindex of 11:
- result := Form1.button1_pressed;
- end;
- case eventindex of 12:
- result := Form1.button1_pressed;
- end;
- case eventindex of 13:
- result := Form1.button1_pressed;
- end;
- case eventindex of 14:
- result := Form1.button1_pressed;
- end;
- case eventindex of 15:
- result := Form1.button1_pressed;
- end;
- case eventindex of 16:
- result := Form1.button1_pressed;
- end;
- case eventindex of 17:
- result := Form1.button1_pressed;
- end;
- case eventindex of 18:
- result := Form1.button1_pressed;
- end;
- case eventindex of 19:
- result := Form1.button1_pressed;
- end;
- case eventindex of 20:
- result := Form1.button1_pressed;
- end;
- case eventindex of 21:
- result := Form1.button1_pressed;
- end;
- case eventindex of 22:
- result := Form1.button1_pressed;
- end;
- end;
- exports
- PluginStart,
- PluginFinalize,
- ReceiveVarString,
- OnConnectingVehicle,
- OnUnconnectingVehicle,
- SetButton;
- end.
Code: TestU.pas
Vielleicht hat ja jemand eine Idee und würde sie mit mir teilen. Ich würde mich freuen.