SetupCopyOEMInf(
"c:\\xx\\wdtoken.inf",
"c:\\xx",
SPOST_PATH,
0,
NULL,
0,
NULL,
NULL
);
安装成功,但是第一次插入设备的时候能够正确识别设备类型,但是不能用,错误代码10,提示windows未能正确安装驱动程序,设备可能无法使用。拔下来在插上就能用了。或者是把设备停用后再启用状态也就正常了。
请问这是怎么回事,应该怎么解决?
inf如下:
;
; wdtoken.inf
;
; WatchData WatchKey Driver Installation File.
;
; (C) Copyright 2004-2006 WatchData System Co., Ltd.
;
;
[Version]
Signature ="$WINDOWS NT$"
Provider =%WatchData%
ClassGUID={36fc9e60-c465-11cf-8056-444553540000}
Class=USB
CatalogFile=wdtoken.cat
DriverVer=07/08/2005,1.02.01.00
;
; Source Media
;
[SourceDisksNames]
1=%DiskName%,,,
[SourceDisksFiles]
wdtoken.sys=1,,
wdkeyenum.sys=1,,
wdkeyifd.sys =1,,
[DestinationDirs]
DefaultDestDir = 12
wdKeyEnum_Files = 12
wdKeyIFD_Files = 12
wdToken_Files = 12
[wdToken_Files]
wdtoken.sys,,,0x00000062
[wdKeyEnum_Files]
wdkeyenum.sys,,,0x00000062
[wdKeyIFD_Files]
wdkeyifd.sys,,,0x00000062
;
; Manufacture
;
[Manufacturer]
%WatchData%=WatchData
;
; Models
;
[WatchData]
%PID_ENUM% =wdKeyEnum_Install,WDKey\WDKeyEnum
%PID_IFD% =wdKeyIFD_Install, WdKeyEnum\WdKeyIFD
%PID_PRO% =wdToken_Install,USB\VID_6513&PID_0089
%PID_READER_ST% =wdToken_Install,USB\VID_6513&PID_0189
%PID_PRO_0101% =wdToken_Install,USB\VID_163C&PID_0101
%PID_PRO_0201% =wdToken_Install,USB\VID_163C&PID_0201
%PID_PRO_0301% =wdToken_Install,USB\VID_163C&PID_0301
%PID_PRO_0401% =wdToken_Install,USB\VID_163C&PID_0401
%PID_PRO_0800% =wdToken_Install,USB\VID_163C&PID_0800
%PID_PRO_0801% =wdToken_Install,USB\VID_163C&PID_0801
;
; Exclude selected models from display
;
[ControlFlags]
ExcludeFromSelect = *
;
; WatchKey (Pro) Driver Installation
;
[wdToken_Install.NTx86]
CopyFiles=wdToken_Files,wdKeyEnum_Files,wdKeyIFD_Files
DriverVer=07/08/2005,1.01.01.00
[wdToken_Install.NTx86.Services]
AddService=wdToken,0x00000002,wdToken_AddService
[wdToken_AddService]
DisplayName = %TOKEN_DISPNAME%
Description = %TOKEN_SVCDESC%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\wdtoken.sys
LoadOrderGroup = Extended Base
;
; WatchKey Enumerator Driver Installation
;
[wdKeyEnum_Install.NTx86]
CopyFiles=wdKeyEnum_Files,wdKeyIFD_Files,wdToken_Files
AddReg =wdKeyEnum_AddReg
DriverVer=07/08/2005,1.01.01.00
[wdKeyEnum_Install.NTx86.Services]
AddService=wdKeyEnum,0x00000002,wdKeyEnum_AddService
[wdKeyEnum_AddService]
DisplayName = %ENUM_DISPNAME%
Description = %ENUM_SVCDESC%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\wdkeyenum.sys
LoadOrderGroup = Extended Base
[wdKeyEnum_AddReg]
; The number of virtual pc/sc smarcard reader
HKLM,SYSTEM\CurrentControlSet\Services\wdKeyEnum,NumberOfDevices, 0x10003,0
;
; WatchKey Virtual Reader Driver Installation
;
[wdKeyIFD_Install.NTx86]
CopyFiles=wdKeyEnum_Files,wdKeyIFD_Files,wdToken_Files
AddReg =wdKeyIFD_AddReg
DriverVer=07/08/2005,1.01.01.00
[wdKeyIFD_Install.NTx86.Services]
AddService=wdKeyIFD, 0x00000002,wdKeyIFD_AddService,wdKeyIFD_EventLog
[wdKeyIFD_AddService]
DisplayName = %IFD_DISPNAME%
Description = %IFD_SVCDESC%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\wdkeyifd.sys
LoadOrderGroup = Extended Base
[wdKeyIFD_EventLog]
AddReg = wdKeyIFD_EventLog_AddReg
[wdKeyIFD_EventLog_AddReg]
HKR,,EventMessageFile,0x00020000,%12%\wdkeyifd.sys
HKR,,TypesSupported,0x00010001,7
[wdKeyIFD_AddReg]
HKLM,SYSTEM\CurrentControlSet\Services\wdKeyIFD,EnablePCSC, 0x10003,0
; Default
[Strings]
WatchData = "WatchData System Co., Ltd."
DiskName = "WatchData USB Key Installation Disk"
PID_ENUM = "WatchData USB Key Enumerator"
PID_IFD = "WatchData USB Key Virtual Reader"
PID_PRO = "WatchData USB Key Pro(ST)"
PID_READER_ST = "WatchData USB Smartcard Reader(ST)"
PID_PRO_0101 = "WatchData USB Key Pro(HT)"
PID_PRO_0201 = "WatchData USB Key Pro(ST)"
PID_PRO_0301 = "WatchData USB Key"
PID_PRO_0401 = "WatchData USB Key Pro(ZTE)"
PID_PRO_0800 = "WatchData USB Key"
PID_PRO_0801 = "WatchData CRW-VIII Smartcard Reader"
TOKEN_DISPNAME = "WatchData USB Key"
TOKEN_SVCDESC = "WatchData USB Key Service"
ENUM_DISPNAME = "WatchData USB Key Enumerator"
ENUM_SVCDESC = "WatchData USB Key Enumerator Service"
IFD_DISPNAME = "WatchData USB Key Virtual Reader"
IFD_SVCDESC = "WatchData USB Key Virtual Reader Service"
9 个解决方案
#1
安装完了以后,查看驱动是否RUNNING起来没,没有再SC Start启动
#2
帮你顶,同样遇到这个问题。非常期待答案。
#3
win2000上没有sc.exe,是不是只能用BOOL WINAPI StartService(
__in SC_HANDLE hService,
__in DWORD dwNumServiceArgs,
__in_opt LPCTSTR* lpServiceArgVectors
);
启动服务?
可以在inf文件中增加指令启动服务吗?
#4
是不是驱动的问题
#5
用API可以启动,同时QueryService查询
#6
好难的问题, 学习了.
#7
请问:oyljerry
我在干净的虚拟机中测试制作的安装程序,该虚拟机以前没有插入过我使用的USB 设备,
我执行完安装程序后,插入USB 设备前,
执行sc query type= driver state= all,显示的列表中没有我安装的服务(wdToken),
执行sc query wdToken,提示
在注册表中搜索wdToken,也搜索不到任何信息。
system32\drivers文件夹里面没有
wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys驱动程序文件(要安装的驱动文件)
第一次插入USB设备后,
执行sc query wdToken提示:
system32\drivers文件夹里面出现了wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys文件
设备管理器查看该USB 设备,上面有个黄色的叹号,提示该设备无法启动。 (代码 10)
执行sc start wdToken
设备上面仍然有个黄色叹号
把USB设备拔下来,再插上,一切正常。
请问,这是怎么回事?应该怎么处理?
inf文件和sys文件都是我从另外一个安装包里面提取出来的,原来的安装包没有问题,安装完成后就能用。
我在干净的虚拟机中测试制作的安装程序,该虚拟机以前没有插入过我使用的USB 设备,
我执行完安装程序后,插入USB 设备前,
执行sc query type= driver state= all,显示的列表中没有我安装的服务(wdToken),
执行sc query wdToken,提示
C:\Documents and Settings\hebca>sc query wdToken
[SC] EnumQueryServicesStatus:OpenService FAILED 1060
在注册表中搜索wdToken,也搜索不到任何信息。
system32\drivers文件夹里面没有
wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys驱动程序文件(要安装的驱动文件)
第一次插入USB设备后,
执行sc query wdToken提示:
C:\Documents and Settings\hebca>sc query wdToken
SERVICE_NAME: wdToken
TYPE : 1 KERNEL_DRIVER
STATE : 1 STOPPED
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 1077 (0x435)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
C:\Documents and Settings\hebca>net helpmsg 1077
上次启动之后,仍未尝试引导服务。
system32\drivers文件夹里面出现了wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys文件
设备管理器查看该USB 设备,上面有个黄色的叹号,提示该设备无法启动。 (代码 10)
执行sc start wdToken
C:\Documents and Settings\hebca>sc start wdToken
SERVICE_NAME: wdToken
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 0
FLAGS :
设备上面仍然有个黄色叹号
把USB设备拔下来,再插上,一切正常。
请问,这是怎么回事?应该怎么处理?
inf文件和sys文件都是我从另外一个安装包里面提取出来的,原来的安装包没有问题,安装完成后就能用。
#8
我运行原版的驱动程序安装包,安装完后,wdKeyEnum、wdKeyIFD的状态正常,wdToken不正常。
我如何才能把wdKeyEnum、wdKeyIFD运行起来?
C:\Documents and Settings\hebca>sc query wdKeyEnum
SERVICE_NAME: wdKeyEnum
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
C:\Documents and Settings\hebca>sc query wdKeyIFD
SERVICE_NAME: wdKeyIFD
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
C:\Documents and Settings\hebca>sc query wdToken
[SC] EnumQueryServicesStatus:OpenService FAILED 1060:
我如何才能把wdKeyEnum、wdKeyIFD运行起来?
#9
再顶起来
如何安装完驱动后再安装2个虚拟设备呢(下面的设备)?
%PID_ENUM% =wdKeyEnum_Install,WDKey\WDKeyEnum
%PID_IFD% =wdKeyIFD_Install, WdKeyEnum\WdKeyIFD
如何安装完驱动后再安装2个虚拟设备呢(下面的设备)?
%PID_ENUM% =wdKeyEnum_Install,WDKey\WDKeyEnum
%PID_IFD% =wdKeyIFD_Install, WdKeyEnum\WdKeyIFD
#1
安装完了以后,查看驱动是否RUNNING起来没,没有再SC Start启动
#2
帮你顶,同样遇到这个问题。非常期待答案。
#3
win2000上没有sc.exe,是不是只能用BOOL WINAPI StartService(
__in SC_HANDLE hService,
__in DWORD dwNumServiceArgs,
__in_opt LPCTSTR* lpServiceArgVectors
);
启动服务?
可以在inf文件中增加指令启动服务吗?
#4
是不是驱动的问题
#5
用API可以启动,同时QueryService查询
#6
好难的问题, 学习了.
#7
请问:oyljerry
我在干净的虚拟机中测试制作的安装程序,该虚拟机以前没有插入过我使用的USB 设备,
我执行完安装程序后,插入USB 设备前,
执行sc query type= driver state= all,显示的列表中没有我安装的服务(wdToken),
执行sc query wdToken,提示
在注册表中搜索wdToken,也搜索不到任何信息。
system32\drivers文件夹里面没有
wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys驱动程序文件(要安装的驱动文件)
第一次插入USB设备后,
执行sc query wdToken提示:
system32\drivers文件夹里面出现了wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys文件
设备管理器查看该USB 设备,上面有个黄色的叹号,提示该设备无法启动。 (代码 10)
执行sc start wdToken
设备上面仍然有个黄色叹号
把USB设备拔下来,再插上,一切正常。
请问,这是怎么回事?应该怎么处理?
inf文件和sys文件都是我从另外一个安装包里面提取出来的,原来的安装包没有问题,安装完成后就能用。
我在干净的虚拟机中测试制作的安装程序,该虚拟机以前没有插入过我使用的USB 设备,
我执行完安装程序后,插入USB 设备前,
执行sc query type= driver state= all,显示的列表中没有我安装的服务(wdToken),
执行sc query wdToken,提示
C:\Documents and Settings\hebca>sc query wdToken
[SC] EnumQueryServicesStatus:OpenService FAILED 1060
在注册表中搜索wdToken,也搜索不到任何信息。
system32\drivers文件夹里面没有
wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys驱动程序文件(要安装的驱动文件)
第一次插入USB设备后,
执行sc query wdToken提示:
C:\Documents and Settings\hebca>sc query wdToken
SERVICE_NAME: wdToken
TYPE : 1 KERNEL_DRIVER
STATE : 1 STOPPED
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 1077 (0x435)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
C:\Documents and Settings\hebca>net helpmsg 1077
上次启动之后,仍未尝试引导服务。
system32\drivers文件夹里面出现了wdtoken.sys, wdkeyenum.sys, wdkeyifd.sys文件
设备管理器查看该USB 设备,上面有个黄色的叹号,提示该设备无法启动。 (代码 10)
执行sc start wdToken
C:\Documents and Settings\hebca>sc start wdToken
SERVICE_NAME: wdToken
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
PID : 0
FLAGS :
设备上面仍然有个黄色叹号
把USB设备拔下来,再插上,一切正常。
请问,这是怎么回事?应该怎么处理?
inf文件和sys文件都是我从另外一个安装包里面提取出来的,原来的安装包没有问题,安装完成后就能用。
#8
我运行原版的驱动程序安装包,安装完后,wdKeyEnum、wdKeyIFD的状态正常,wdToken不正常。
我如何才能把wdKeyEnum、wdKeyIFD运行起来?
C:\Documents and Settings\hebca>sc query wdKeyEnum
SERVICE_NAME: wdKeyEnum
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
C:\Documents and Settings\hebca>sc query wdKeyIFD
SERVICE_NAME: wdKeyIFD
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
C:\Documents and Settings\hebca>sc query wdToken
[SC] EnumQueryServicesStatus:OpenService FAILED 1060:
我如何才能把wdKeyEnum、wdKeyIFD运行起来?
#9
再顶起来
如何安装完驱动后再安装2个虚拟设备呢(下面的设备)?
%PID_ENUM% =wdKeyEnum_Install,WDKey\WDKeyEnum
%PID_IFD% =wdKeyIFD_Install, WdKeyEnum\WdKeyIFD
如何安装完驱动后再安装2个虚拟设备呢(下面的设备)?
%PID_ENUM% =wdKeyEnum_Install,WDKey\WDKeyEnum
%PID_IFD% =wdKeyIFD_Install, WdKeyEnum\WdKeyIFD