wangxdong
驱动小牛
驱动小牛
  • 注册日期2002-07-08
  • 最后登录2003-01-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1834回复:5

如何把驱动做成组件?

楼主#
更多 发布于:2002-08-24 10:39
有谁做过把驱动做成COM组件吗?我的inf文件如下
[OVT.USBDCam511P.NT]
Include= ks.inf, kscaptur.inf, ksfilter.inf
Needs= KS.Registration,KSCAPTUR.Registration.NT
SubClass=StillImage
DeviceType=2
DeviceSubType=0xA511
Capabilities=1
;PropertyPages=\"omcamcpl.DLL ,EnumStiPropPages\"
Events=OVT.Events
DeviceData=OVT.STI.DeviceData
ICMProfiles=\"sRGB Color Space Profile.icm\"
UpdateInis= OVT.USBDCam511P.Links
DelReg=OVT.DelReg
AddReg=OVT.USBDCam511P.AddReg, OVT.USBDCam511P.BasicSetting, OVT.511P.AddReg, OVT.2000.AddReg
CopyFiles=OVT.STI.CopyFiles, OVT.Setting.CopyFiles, OVT.TWAIN.CopyFiles, OVT.USBDCam511P.2000, OVT.AP.CopyFiles
其中ks.inf应该是windows内核流的驱动,但我在提取inf文件信息时提示subclass等段不能处理,不知为什么?

最新喜欢:

duyuanyuanduyuan...
请多多指教!
xi903
驱动牛犊
驱动牛犊
  • 注册日期2002-06-19
  • 最后登录2009-07-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-10-09 20:29
为什么不可以呢?COM是一个二进制的组件,是一个平台无关、语言无关的组件。根本无法指出它为什么不可以运行在内核态。DirectX和NDIS的Notify Objects都是非常好的例子。
mike_wang
驱动中牛
驱动中牛
  • 注册日期2003-01-22
  • 最后登录2012-01-04
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望10点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-10-08 19:38
根据你的inf 文件格式应该属于流驱动中的still image device,
你查看ntddk中的INF Files for Still Image Devices
有详细的说明
minsoft
驱动小牛
驱动小牛
  • 注册日期2001-07-30
  • 最后登录2007-03-06
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-10-08 12:08
只试过将驱动做成DLL(内核态)输出函数供其它SYS调用,再就是一个SYS加一个OCX的组合形成ActiveX控件。直接做成COM组件,怎么做呢?一个要求内核态,一个完全是应用层。
少了e,就少了全部
soliseaman
驱动牛犊
驱动牛犊
  • 注册日期2002-07-02
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2002-08-25 16:59
我觉得理论上不太可能
Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
5楼#
发布于:2002-08-25 10:33
用户被禁言,该主题自动屏蔽!
游客

返回顶部