unit mr.drv; interface type TDriver = class abstract( TInterfacedObject) protected fDeviceHandle : THandle; fDevicePath : string; public procedure Open; virtual; abstract; procedure Close; virtual; abstract; public property DevicePath : string read fDevicePath; property DeviceHandle : THandle read fDeviceHandle; end; TDriverClass = class of TDriver; implementation end.