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