📄 usbiocomlib_tlb.pas
字号:
unit USBIOCOMLib_TLB;
// ************************************************************************ //
// WARNING
// -------
// The types declared in this file were generated from data read from a
// Type Library. If this type library is explicitly or indirectly (via
// another type library referring to this type library) re-imported, or the
// 'Refresh' command of the Type Library Editor activated while editing the
// Type Library, the contents of this file will be regenerated and all
// manual modifications will be lost.
// ************************************************************************ //
// PASTLWTR : $Revision: 1.88 $
// File generated on 09.01.2002 15:35:09 from Type Library described below.
// *************************************************************************//
// NOTE:
// Items guarded by $IFDEF_LIVE_SERVER_AT_DESIGN_TIME are used by properties
// which return objects that may need to be explicitly created via a function
// call prior to any access via the property. These items have been disabled
// in order to prevent accidental use from within the object inspector. You
// may enable them by defining LIVE_SERVER_AT_DESIGN_TIME or by selectively
// removing them from the $IFDEF blocks. However, such items must still be
// programmatically created via a method of the appropriate CoClass before
// they can be used.
// ************************************************************************ //
// Type Lib: W:\_Thesycon\UsbIo\source\bin\release\USBIOCOM.dll (1)
// IID\LCID: {C8FFEA47-0BC3-494C-A53C-C3951713FA19}\0
// Helpfile:
// DepndLst:
// (1) v2.0 stdole, (D:\WINNT\System32\stdole2.tlb)
// (2) v4.0 StdVCL, (D:\WINNT\System32\STDVCL40.DLL)
// Errors:
// Hint: Parameter 'Type' of IUSBIOInterface.ClassOrVendorInRequest changed to 'Type_'
// Hint: Parameter 'Type' of IUSBIOInterface.ClassOrVendorOutRequest changed to 'Type_'
// Error creating palette bitmap of (TUSBIOInterface) : Server W:\_Thesycon\UsbIo\source\bin\release\USBIOCOM.dll contains no icons
// ************************************************************************ //
{$TYPEDADDRESS OFF} // Unit must be compiled without type-checked pointers.
interface
uses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL;
// *********************************************************************//
// GUIDS declared in the TypeLibrary. Following prefixes are used:
// Type Libraries : LIBID_xxxx
// CoClasses : CLASS_xxxx
// DISPInterfaces : DIID_xxxx
// Non-DISP interfaces: IID_xxxx
// *********************************************************************//
const
// TypeLibrary Major and minor versions
USBIOCOMLibMajorVersion = 1;
USBIOCOMLibMinorVersion = 0;
LIBID_USBIOCOMLib: TGUID = '{C8FFEA47-0BC3-494C-A53C-C3951713FA19}';
DIID__IUSBIOInterfaceEvents: TGUID = '{1553C229-9FA0-4E20-A66E-EA2F28C35A49}';
IID_IUSBIOInterface: TGUID = '{666A2128-A89C-4166-8683-59D0628E227D}';
CLASS_USBIOInterface: TGUID = '{9FCAC6CD-1440-4ABD-8997-13C42201A20B}';
// *********************************************************************//
// Declaration of Enumerations defined in Type Library
// *********************************************************************//
// Constants for enum _USBIOCOM_ERR_CODES
type
_USBIOCOM_ERR_CODES = TOleEnum;
const
USBIO_ERR_SUCCESS = $00000000;
USBIO_ERR_CRC = $E0000001;
USBIO_ERR_BTSTUFF = $E0000002;
USBIO_ERR_DATA_TOGGLE_MISMATCH = $E0000003;
USBIO_ERR_STALL_PID = $E0000004;
USBIO_ERR_DEV_NOT_RESPONDING = $E0000005;
USBIO_ERR_PID_CHECK_FAILURE = $E0000006;
USBIO_ERR_UNEXPECTED_PID = $E0000007;
USBIO_ERR_DATA_OVERRUN = $E0000008;
USBIO_ERR_DATA_UNDERRUN = $E0000009;
USBIO_ERR_RESERVED1 = $E000000A;
USBIO_ERR_RESERVED2 = $E000000B;
USBIO_ERR_BUFFER_OVERRUN = $E000000C;
USBIO_ERR_BUFFER_UNDERRUN = $E000000D;
USBIO_ERR_NOT_ACCESSED = $E000000F;
USBIO_ERR_FIFO = $E0000010;
USBIO_ERR_ENDPOINT_HALTED = $E0000030;
USBIO_ERR_NO_MEMORY = $E0000100;
USBIO_ERR_INVALID_URB_FUNCTION = $E0000200;
USBIO_ERR_INVALID_PARAMETER = $E0000300;
USBIO_ERR_ERROR_BUSY = $E0000400;
USBIO_ERR_REQUEST_FAILED = $E0000500;
USBIO_ERR_INVALID_PIPE_HANDLE = $E0000600;
USBIO_ERR_NO_BANDWIDTH = $E0000700;
USBIO_ERR_INTERNAL_HC_ERROR = $E0000800;
USBIO_ERR_ERROR_SHORT_TRANSFER = $E0000900;
USBIO_ERR_BAD_START_FRAME = $E0000A00;
USBIO_ERR_ISOCH_REQUEST_FAILED = $E0000B00;
USBIO_ERR_FRAME_CONTROL_OWNED = $E0000C00;
USBIO_ERR_FRAME_CONTROL_NOT_OWNED = $E0000D00;
USBIO_ERR_CANCELED = $E0010000;
USBIO_ERR_CANCELING = $E0020000;
USBIO_ERR_FAILED = $E0001000;
USBIO_ERR_INVALID_INBUFFER = $E0001001;
USBIO_ERR_INVALID_OUTBUFFER = $E0001002;
USBIO_ERR_OUT_OF_MEMORY = $E0001003;
USBIO_ERR_PENDING_REQUESTS = $E0001004;
USBIO_ERR_ALREADY_CONFIGURED = $E0001005;
USBIO_ERR_NOT_CONFIGURED = $E0001006;
USBIO_ERR_OPEN_PIPES = $E0001007;
USBIO_ERR_ALREADY_BOUND = $E0001008;
USBIO_ERR_NOT_BOUND = $E0001009;
USBIO_ERR_DEVICE_NOT_PRESENT = $E000100A;
USBIO_ERR_CONTROL_NOT_SUPPORTED = $E000100B;
USBIO_ERR_TIMEOUT = $E000100C;
USBIO_ERR_INVALID_RECIPIENT = $E000100D;
USBIO_ERR_INVALID_TYPE = $E000100E;
USBIO_ERR_INVALID_IOCTL = $E000100F;
USBIO_ERR_INVALID_DIRECTION = $E0001010;
USBIO_ERR_TOO_MUCH_ISO_PACKETS = $E0001011;
USBIO_ERR_POOL_EMPTY = $E0001012;
USBIO_ERR_PIPE_NOT_FOUND = $E0001013;
USBIO_ERR_INVALID_ISO_PACKET = $E0001014;
USBIO_ERR_OUT_OF_ADDRESS_SPACE = $E0001015;
USBIO_ERR_INTERFACE_NOT_FOUND = $E0001016;
USBIO_ERR_INVALID_DEVICE_STATE = $E0001017;
USBIO_ERR_INVALID_PARAM = $E0001018;
USBIO_ERR_DEMO_EXPIRED = $E0001019;
USBIO_ERR_INVALID_POWER_STATE = $E000101A;
USBIO_ERR_POWER_DOWN = $E000101B;
USBIO_ERR_VERSION_MISMATCH = $E000101C;
USBIO_ERR_SET_CONFIGURATION_FAILED = $E000101D;
USBIO_ERR_VID_RESTRICTION = $E0001080;
USBIO_ERR_ISO_RESTRICTION = $E0001081;
USBIO_ERR_BULK_RESTRICTION = $E0001082;
USBIO_ERR_EP0_RESTRICTION = $E0001083;
USBIO_ERR_PIPE_RESTRICTION = $E0001084;
USBIO_ERR_PIPE_SIZE_RESTRICTION = $E0001085;
USBIO_ERR_DEVICE_NOT_FOUND = $E0001100;
USBIO_ERR_DEVICE_NOT_OPEN = $E0001102;
USBIO_ERR_NO_SUCH_DEVICE_INSTANCE = $E0001104;
USBIO_ERR_INVALID_FUNCTION_PARAM = $E0001105;
USBIO_ERR_NOT_ENUMERATED = $E000A001;
USBIO_ERR_TOO_MANY_INTERFACES = $E000A002;
USBIO_ERR_NO_INTERFACE = $E000A003;
USBIO_ERR_START_THREAD_FAILED = $E000A004;
USBIO_ERR_NO_DATA = $E000A005;
USBIO_ERR_BUFFER_TOO_SMALL = $E000A006;
USBIO_ERR_THREAD_IS_RUNNING = $E000A007;
USBIO_ERR_INVALID_PIPE_TYPE = $E000A008;
USBIO_ERR_NO_BUFFER = $E000A009;
USBIO_ERR_BUFFER_TOO_LARGE = $E000A00A;
USBIO_ERR_WRITE_NOT_STARTED = $E000A00B;
USBIO_ERR_READ_NOT_STARTED = $E000A00C;
USBIO_ERR_INVALID_ISO_BUFFER = $E000A00D;
USBIO_ERR_STATUS_ARRAY_TOO_SMALL = $E000A00E;
USBIO_ERR_INVALID_ARRAY = $E000A00F;
USBIO_ERR_DEVICE_ALREADY_OPEN = $E000A010;
USBIO_ERR_ALREADY_CALLED = $E000A011;
// Constants for enum _USBIOCOM_INFO_FLAGS
type
_USBIOCOM_INFO_FLAGS = TOleEnum;
const
USBIOCOM_INFOFLAG_CHECKED_BUILD = $00000010;
USBIOCOM_INFOFLAG_DEMO_VERSION = $00000020;
USBIOCOM_INFOFLAG_LIGHT_VERSION = $00000100;
// Constants for enum _USBIOCOM_DEVICE_OPTION_FLAGS
type
_USBIOCOM_DEVICE_OPTION_FLAGS = TOleEnum;
const
USBIOCOM_RESET_DEVICE_ON_CLOSE = $00000001;
USBIOCOM_UNCONFIGURE_ON_CLOSE = $00000002;
USBIOCOM_ENABLE_REMOTE_WAKEUP = $00000004;
// Constants for enum _USBIOCOM_PIPE_OPTION_FLAGS
type
_USBIOCOM_PIPE_OPTION_FLAGS = TOleEnum;
const
USBIOCOM_SHORT_TRANSFER_OK = $00010000;
// Constants for enum _USBIOCOM_REQUEST_RECIPIENT
type
_USBIOCOM_REQUEST_RECIPIENT = TOleEnum;
const
USBIOCOM_RecipientDevice = $00000000;
USBIOCOM_RecipientInterface = $00000001;
USBIOCOM_RecipientEndpoint = $00000002;
USBIOCOM_RecipientOther = $00000003;
// Constants for enum _USBIOCOM_REQUEST_TYPE
type
_USBIOCOM_REQUEST_TYPE = TOleEnum;
const
USBIOCOM_RequestTypeClass = $00000001;
USBIOCOM_RequestTypeVendor = $00000002;
// Constants for enum _USBIOCOM_PIPE_TYPE
type
_USBIOCOM_PIPE_TYPE = TOleEnum;
const
USBIOCOM_PipeTypeControl = $00000000;
USBIOCOM_PipeTypeIsochronous = $00000001;
USBIOCOM_PipeTypeBulk = $00000002;
USBIOCOM_PipeTypeInterrupt = $00000003;
// Constants for enum _USBIOCOM_DEVICE_POWER_STATE
type
_USBIOCOM_DEVICE_POWER_STATE = TOleEnum;
const
USBIOCOM_DevicePowerStateD0 = $00000000;
USBIOCOM_DevicePowerStateD1 = $00000001;
USBIOCOM_DevicePowerStateD2 = $00000002;
USBIOCOM_DevicePowerStateD3 = $00000003;
// Constants for enum _USBIOCOM_DESCRIPTOR_TYPE
type
_USBIOCOM_DESCRIPTOR_TYPE = TOleEnum;
const
USB_DeviceDescriptorType = $00000001;
USB_ConfigurationDescriptorType = $00000002;
USB_StringDescriptorType = $00000003;
USB_InterfaceDescriptorType = $00000004;
USB_EndpointDescriptorType = $00000005;
USB_HID_DescriptorType = $00000021;
type
// *********************************************************************//
// Forward declaration of types defined in TypeLibrary
// *********************************************************************//
_IUSBIOInterfaceEvents = dispinterface;
IUSBIOInterface = interface;
IUSBIOInterfaceDisp = dispinterface;
// *********************************************************************//
// Declaration of CoClasses defined in Type Library
// (NOTE: Here we map each CoClass to its Default Interface)
// *********************************************************************//
USBIOInterface = IUSBIOInterface;
// *********************************************************************//
// Declaration of structures, unions and aliases.
// *********************************************************************//
USBIOCOM_ERR_CODES = _USBIOCOM_ERR_CODES;
USBIOCOM_INFO_FLAGS = _USBIOCOM_INFO_FLAGS;
USBIOCOM_DEVICE_OPTION_FLAGS = _USBIOCOM_DEVICE_OPTION_FLAGS;
USBIOCOM_PIPE_OPTION_FLAGS = _USBIOCOM_PIPE_OPTION_FLAGS;
USBIOCOM_REQUEST_RECIPIENT = _USBIOCOM_REQUEST_RECIPIENT;
USBIOCOM_REQUEST_TYPE = _USBIOCOM_REQUEST_TYPE;
USBIOCOM_PIPE_TYPE = _USBIOCOM_PIPE_TYPE;
USBIOCOM_DEVICE_POWER_STATE = _USBIOCOM_DEVICE_POWER_STATE;
USBIOCOM_DESCRIPTOR_TYPE = _USBIOCOM_DESCRIPTOR_TYPE;
// *********************************************************************//
// DispIntf: _IUSBIOInterfaceEvents
// Flags: (4096) Dispatchable
// GUID: {1553C229-9FA0-4E20-A66E-EA2F28C35A49}
// *********************************************************************//
_IUSBIOInterfaceEvents = dispinterface
['{1553C229-9FA0-4E20-A66E-EA2F28C35A49}']
procedure ReadComplete(const Obj: IDispatch); dispid 1;
procedure WriteComplete(const Obj: IDispatch); dispid 2;
procedure WriteStatusAvailable(const Obj: IDispatch); dispid 3;
procedure PnPAddNotification(const Obj: IDispatch); dispid 4;
procedure PnPRemoveNotification(const Obj: IDispatch); dispid 5;
end;
// *********************************************************************//
// Interface: IUSBIOInterface
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {666A2128-A89C-4166-8683-59D0628E227D}
// *********************************************************************//
IUSBIOInterface = interface(IDispatch)
['{666A2128-A89C-4166-8683-59D0628E227D}']
procedure EnumerateDevices(const GUIDDriverInterface: WideString; out NumberOfDevices: SYSINT); safecall;
procedure OpenDevice(DeviceNumber: SYSINT; out Status: SYSINT); safecall;
procedure CloseDevice; safecall;
function Get_DevicePathName: WideString; safecall;
procedure GetDriverInfo(out APIVersion: SYSINT; out DriverVersion: SYSINT;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -