您需要为 Windows 编写一个 .inf 文件,将您的设备 VID 和 PID 与系统 usbser.sys 联系起来。我的看起来像这样(根据需要替换 YourCompany,输入您的 VID 和 PID(十六进制),并将 DriverVer 行更改为您想要的任何日期和版本):
; -----------------------------------------------------------------------------
; XP/2000 USB Comms Port Setup
; -----------------------------------------------------------------------------
[Version]
DriverVer=12/03/2008,1.0.0000.0000
Signature="$Windows NT$"
Class=Ports
ClassGUID={4d36e978-e325-11ce-bfc1-08002be10318}
Provider=%YourCompany%
[DestinationDirs]
DefaultDestDir=10,system32\drivers
DriverCopyFiles=12
[ControlFlags]
ExcludeFromSelect = *
[Manufacturer]
%YourCOmpany%=YourCompanySerialPort
[YourCompanySerialPort]
%YourCompanyUSBSerialPort%=YOURCOMPANYUSB,USB\VID_1234&PID_ABCD
;
; Win 2000/XP
;
[YOURCOMPANYUSB]
Include=mdmcpq.inf
CopyFiles=FakeModemCopyFileSection
[YOURCOMPANYUSB.HW]
AddReg=YOURCOMPANYUSBAddReg.HW
[YOURCOMPANYUSBAddReg.HW]
HKR,,DevLoader,0,*ntkern
HKR,,NTMPDriver,,"usbser.sys"
[YOURCOMPANYUSB.Services]
AddService=usbser, 0x00000002, FuncDrv_Service_Inst
[FuncDrv_Service_Inst]
DisplayName=%USBFilterString%
ServiceType= 1
StartType = 3
ErrorControl = 0
ServiceBinary = %12%\usbser.sys
[Strings]
YourCompany="YourCompany"
YourCompanySerialPort="Your Company USB Serial Port"
USBFilterString = "USB Serial Service"
请注意,这仅适用于 32 位操作系统。它也适用于 Vista,尽管文件头没有说明!
请注意,某些版本的 usbser.sys 存在严重问题,包括蓝屏,例如在传输精确为 64 字节的倍数的数据包时。如果您使用的是 XP SP2 或更早版本,请安装修补程序 KB943198。 XP SP3 和 Vista 都可以。
对于 Mac,您只需正确报告您的设备类别,然后驱动程序扫描就会选择正确的驱动程序。 (Windows 会忽略设备类,这就是您需要提供 .inf 文件的原因)。
编辑:对不起,我应该更清楚。如果它不能绘制满负载,这将不会失败 - 我不确定这是否可能。