1、 对于一些精简过的系统,无法安装虚拟串口,是由于系统缺少mdmcpq.inf和usbser.sys文件所造成的。只需要将文件下载下来放在相应的文件夹下面就行了。
文件对应的目录如下:
mdmcpq.inf在C:\WINDOWS\INF目录;
usbser.sys在C:\WINDOWS\SYSTEM32\DRIVERS\目录。
2、修改mdmcpq.inf
[FakeModemCopyFileSection]
usbser.sys,,,0x20
修改为
[FakeModemCopyFileSection]
;usbser.sys,,,0x20
正是这一段文件的错误导致在安装时不能将FileRepository文件夹中的usbser.sys文件复制到drivers目录下,导致安装错误。
3、在完成上面两步之后,安装驱动文件stmcdc.inf,注意PID/VID和SM32T程序中的使用一致。
附上stmcdc.inf文件,红色标注处为需要修改的地方:
;------------------------------------------------------------------------------
; STMicroelectronics Comunication Device Class driver (CDC) INF FILE
; (C)2009 Copyright STMicroelectronics
;------------------------------------------------------------------------------
[Version]
Signature="$Windows NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%MANUFACTURER%
LayoutFile=layout.inf
;CatalogFile=%FILENAME%.cat
DriverVer= 9/20/2009,1.2.0
[Manufacturer]
%MANUFACTURER%=DeviceList,NTamd64
[DestinationDirs]
DefaultDestDir=12
;------------------------------------------------------------------------------
; Windows 2000/XP/Vista32 Support
;------------------------------------------------------------------------------
[DriverInstall.nt]
include=mdmcpq.inf
CopyFiles=DriverCopyFiles.nt
AddReg=DriverInstall.nt.AddReg
[DriverCopyFiles.nt]
usbser.sys,,,0x20
[DriverInstall.nt.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
[DriverInstall.nt.Services]
AddService=usbser, 0x00000002, DriverService.nt
[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
; Windows Vista64 Support
;------------------------------------------------------------------------------
[DriverInstall.NTamd64]
include=mdmcpq.inf
CopyFiles=DriverCopyFiles.NTamd64
AddReg=DriverInstall.NTamd64.AddReg
[DriverCopyFiles.NTamd64]
%DRIVERFILENAME%.sys,,,0x20
[DriverInstall.NTamd64.AddReg]
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
[DriverInstall.NTamd64.Services]
AddService=usbser, 0x00000002, DriverService.NTamd64
[DriverService.NTamd64]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
; VID/PID Settings
;------------------------------------------------------------------------------
[SourceDisksFiles]
[SourceDisksNames]
[DeviceList]
�SCRIPTION%=DriverInstall,USB\VID_0483&PID_7540
[DeviceList.NTamd64]
�SCRIPTION%=DriverInstall,USB\VID_0483&PID_7540
;------------------------------------------------------------------------------
; String Definitions
;------------------------------------------------------------------------------
[Strings]
FILENAME="ST_Virtual"
DRIVERFILENAME ="usbser"
MANUFACTURER="STMicroelectronics"
INSTDISK="CDC_DISK"
DESCRIPTION="STM Virtual COM Port"
SERVICE="Virtual Com Driver"