⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usbiocomlib_tlb.pas

📁 6个用VB和DELPHI编写的FOR USB驱动程序
💻 PAS
📖 第 1 页 / 共 4 页
字号:
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 + -