Zitat von
sx2008:
Die perfekte Lösung wäre also die, dass die Klasse TMB100 die Einstellungen für die serielle Schnittstelle überhaupt nicht zu kennen braucht, sondern sie braucht nur zu wissen welche
COM-Port-Komponente sie benützen soll.
Genau das eben nicht. Ich werde später mehrer Klassen schreiben. Je nach angeschlossener und Lizenzierter Hardware, wird die entsprechende Klasse genommen und die Einstellungen der Hardware der ComPort Komponente zugewiesen. Die Anwendung und der Dienst sollen später 4 Ports verarbeiten. In der aktuellen Entwicklungsphase mache ich das zur Zeit folgendermaßen...
Ich habe einen Compilerschalter eingebaut, welcher mir je nach Lizenz die Klassensteuerung übernimmt. Somit bin ich mir sicher, das wirklich nur Lizenzierte Funktionen mit in die Anwendung kompiliert werden.
Delphi-Quellcode:
unit psComServMain;
{$I CompilerSchalter.inc}
//...
type
THardware = (MB100, MB256, ESSERIQ8, BOSCHUEZ);
//..
procedure TfMain.FormCreate(Sender: TObject);
var
Hardware : THardware;
begin
try
Caption := FormCaption + GetVersionInfos(Application.ExeName);
{$IFDEF MB100_P1}//Eine Hardware vom Typ MB100 an COM1
DataModuleServer.SetComPort(0,1);
//0=MB100,1=COM1
{$ENDIF}
Gruß Jens