CN110347628A - 一种在windows操作系统中使usb设备即插即用的方法 - Google Patents

一种在windows操作系统中使usb设备即插即用的方法 Download PDF

Info

Publication number
CN110347628A
CN110347628A CN201910610598.9A CN201910610598A CN110347628A CN 110347628 A CN110347628 A CN 110347628A CN 201910610598 A CN201910610598 A CN 201910610598A CN 110347628 A CN110347628 A CN 110347628A
Authority
CN
China
Prior art keywords
usb
registration table
play
operating system
windows operating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910610598.9A
Other languages
English (en)
Inventor
梁宇飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Jiangbo Information Technology Co Ltd
Original Assignee
Jiangsu Jiangbo Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Jiangbo Information Technology Co Ltd filed Critical Jiangsu Jiangbo Information Technology Co Ltd
Priority to CN201910610598.9A priority Critical patent/CN110347628A/zh
Publication of CN110347628A publication Critical patent/CN110347628A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及计算机系统技术领域,尤指一种在windows操作系统中使usb设备即插即用的方法,包括监测注册表部分、找到对应的usb设备注册表部分和复制对应的usb设备注册表到指定的注册表部分,其具体步骤如下,S1、在驱动程序初始化后调用CmRegisterCallback函数,绑定驱动设备,注册一个注册表监测函数,此函数当注册表有修改时,会通过回调函数通知驱动程序,监测到USB下的注册表有创建动作,当监测到USB下的注册表有创建动作时,查看是否是创建了一个设备对象的位置信息。本发明提供一种在windows操作系统中使usb设备即插即用的方法,主要用来修改windows操作系统的注册表,从而达到让已经装过驱动的usb设备即插即用的效果。

Description

一种在windows操作系统中使usb设备即插即用的方法
技术领域
本发明涉及计算机系统技术领域,尤指一种在windows操作系统中使usb设备即插即用的方法。
背景技术
正常的操作系统中,对于usb设备,第一次插入设备时,系统会找到新设备,要求安装驱动。
而当相同的设备插到不同的usb口上,或者插入另外一个同型号的设备时,系统依旧会找到新设备,并有重新安装驱动的过程,如果安装过程有弹出界面(例如罗技的一款usb摄像头),还需每次都要确认。如果系统是还原的,那么每次插入设备都会有这样的过程,影响客户使用体验。
发明内容
本发明方法旨在解决当相同的设备插到不同的usb口上,或者插入另外一个同型号的设备时,系统依旧会找到新设备,并有重新安装驱动的过程,如果安装过程有弹出界面(例如罗技的一款usb摄像头),还需每次都要确认。如果系统是还原的,那么每次插入设备都会有这样的过程,影响客户使用体验的问题。
本发明提供的一种在windows操作系统中使usb设备即插即用的方法,包括监测注册表部分、找到对应的usb设备注册表部分和复制对应的usb设备注册表到指定的注册表部分,其具体步骤如下;
S1、在驱动程序初始化后调用CmRegisterCallback函数,绑定驱动设备,注册一个注册表监测函数,此函数当注册表有修改时,会通过回调函数通知驱动程序。
S2、监测到USB下的注册表有创建动作,当监测到USB下的注册表有创建动作时,查看是否是创建了一个设备对象的位置信息,如果不是,不处理,如果是,找到是否存在相同设备的原来的设备注册表,如果没有,不处理,如果有,记录下来。
S3、把找到的对应注册表下的所有信息复制到新创建的注册表项中。
优选的,所述S2步骤中的USB的路径为HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB。
优选的,所述S3步骤中的对应注册表包括ContainerID、Driver、ParentIdPrefix、Service等信息。
本发明的技术手段可获得的技术效果为:
(1)、本发明提供一种在windows操作系统中使usb设备即插即用的方法,主要用来修改windows操作系统的注册表,从而达到让已经装过驱动的usb设备即插即用的效果。
附图说明
图1为本发明一种在windows操作系统中使usb设备即插即用的方法技术组成图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式。
本发明所提供的一种在windows操作系统中使usb设备即插即用的方法的较佳实施例如图1所示:
一种在windows操作系统中使usb设备即插即用的方法涉及三个方面,监测注册表部分,找到对应的usb设备注册表部分,复制对应的usb设备注册表到指定的注册表部分,三个步骤后最终完成整个方法,其中各功能如下所示:
一、 监测注册表
在驱动程序初始化后调用CmRegisterCallback函数,绑定驱动设备,注册一个注册表监测函数,此函数当注册表有修改时,会通过回调函数通知驱动程序。
二、 找到对应的usb设备注册表
当监测到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB下的注册表有创建动作时,查看是否是创建了一个设备对象的位置信息,如果不是,不处理。如果是,找到是否存在相同设备的原来的设备注册表,如果没有,不处理。如果有,记录下来。
三、 复制对应的usb设备注册表到指定的注册表
把找到的对应注册表下的所有信息复制到新创建的注册表项中,包括ContainerID,Driver,ParentIdPrefix,Service等信息。
驱动安装好后,在注册表中会实际产生3个对象,设备对象,驱动对象和服务对象。所有设备的入口都在设备对象上,通过设备对象,能找到驱动对象和服务对象。
来个简单的例子,看一下HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB这个注册表键值
VID_xxx&PID_xxx是厂商和设备ID,这个一般跟设备型号是相关的,如果设备型号一样,这个ID就一样,6&c51e984&0&4这个就是位置信息,位置信息下面的就是设备对象了,而Driver对应的{745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0038就是驱动对象了,具体位置为:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Control\ Class\{745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0038,对应的注册表如下:
而Service对应的HidUsb就是服务对象了,具体位置为:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\HidUsb,对应的注册表如下:
对于具有同样设备ID的usb设备而言,驱动对象和服务对象是所有驱动共用的,所以无需再次处理,我们只需要对设备对象处理即可。
当插入一个新usb设备之后,就会因为位置不同,所以注册表就会产生一个新位置,新位置上开始是没有设备对象的,如果在此时复制上次的设备对象到这里,那么,就不会发现硬件了,就达到了即插即用的效果。要达到此效果,需要在驱动中监测usb设备的注册表部分,一旦创建了一个新的位置信息,把对应原来的信息复制过去即可。
以上所述仅为本发明示意性的具体实施方式,并非用以限定本发明的范围。任何本领域的技术人员,在不脱离本发明的构思和原则的前提下所作的等同变化与修改,均应属于本发明保护的范围。而且需要说明的是,本发明的各组成部分并不仅限于上述整体应用,本发明的说明书中描述的各技术特征可以根据实际需要选择一项单独采用或选择多项组合起来使用,因此,本发明理所应当地涵盖了与本案发明点有关的其他组合及具体应用。

Claims (3)

1.一种在windows操作系统中使usb设备即插即用的方法,其特征在于:包括监测注册表部分、找到对应的usb设备注册表部分和复制对应的usb设备注册表到指定的注册表部分,其具体步骤如下;
S1、在驱动程序初始化后调用CmRegisterCallback函数,绑定驱动设备,注册一个注册表监测函数,此函数当注册表有修改时,会通过回调函数通知驱动程序。
S2、监测到USB下的注册表有创建动作,当监测到USB下的注册表有创建动作时,查看是否是创建了一个设备对象的位置信息,如果不是,不处理,如果是,找到是否存在相同设备的原来的设备注册表,如果没有,不处理,如果有,记录下来。
S3、把找到的对应注册表下的所有信息复制到新创建的注册表项中。
2.如权利要求1所述的一种在windows操作系统中使usb设备即插即用的方法,其特征在于:所述S2步骤中的USB的路径为HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB。
3.如权利要求1所述的一种在windows操作系统中使usb设备即插即用的方法,其特征在于:所述S3步骤中的对应注册表包括ContainerID、Driver、ParentIdPrefix、Service等信息。
CN201910610598.9A 2019-07-04 2019-07-04 一种在windows操作系统中使usb设备即插即用的方法 Pending CN110347628A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910610598.9A CN110347628A (zh) 2019-07-04 2019-07-04 一种在windows操作系统中使usb设备即插即用的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910610598.9A CN110347628A (zh) 2019-07-04 2019-07-04 一种在windows操作系统中使usb设备即插即用的方法

Publications (1)

Publication Number Publication Date
CN110347628A true CN110347628A (zh) 2019-10-18

Family

ID=68178430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910610598.9A Pending CN110347628A (zh) 2019-07-04 2019-07-04 一种在windows操作系统中使usb设备即插即用的方法

Country Status (1)

Country Link
CN (1) CN110347628A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825332A (zh) * 2019-11-15 2020-02-21 江苏江波信息科技股份有限公司 一种在windows操作系统中使打印机设备即插即用的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161939A1 (en) * 2001-04-25 2002-10-31 Lg Electronics Inc. Device driver installing method
CN102750164A (zh) * 2012-05-29 2012-10-24 湖北盛天网络技术股份有限公司 一种自动配置设备驱动程序的方法
CN106843917A (zh) * 2015-12-07 2017-06-13 珠海市君天电子科技有限公司 一种驱动程序的加载方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161939A1 (en) * 2001-04-25 2002-10-31 Lg Electronics Inc. Device driver installing method
CN1383063A (zh) * 2001-04-25 2002-12-04 Lg电子株式会社 设备驱动程序安装方法
CN102750164A (zh) * 2012-05-29 2012-10-24 湖北盛天网络技术股份有限公司 一种自动配置设备驱动程序的方法
CN106843917A (zh) * 2015-12-07 2017-06-13 珠海市君天电子科技有限公司 一种驱动程序的加载方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825332A (zh) * 2019-11-15 2020-02-21 江苏江波信息科技股份有限公司 一种在windows操作系统中使打印机设备即插即用的方法
CN110825332B (zh) * 2019-11-15 2023-05-26 江苏江波信息科技股份有限公司 一种在windows操作系统中使打印机设备即插即用的方法

Similar Documents

Publication Publication Date Title
DE10296798B4 (de) SMM-Lader und -Ausführungsmechanismus für Komponentensoftware für mehrere Architekturen
US8930684B2 (en) Adding a runtime service for firmware-based images for a device not known to an operating system
US9612888B2 (en) System and method of providing inter-application communications
US8392921B2 (en) Apparatus and method of coordinating operation action of robot software component
CN106777219A (zh) 用于虚拟化数据中心的数据处理方法及装置
EP1385088A2 (en) Method and system for implementing a portable adaptable operating environment identity
CN102202078A (zh) 用于远程呈现会话服务器场的集中式管理工具
AU2007235540A1 (en) Creating templates of offline resources
EP2642395A1 (de) Verfahren und Vorrichtung zum Ausführen von Workflow-Skripten
US10097567B2 (en) Information processing apparatus and identifying method
CN110347628A (zh) 一种在windows操作系统中使usb设备即插即用的方法
CN105848135A (zh) 一种基于移动终端的多运营商应用定制控制方法及系统
DE112012004793T5 (de) Verfahren und System zum Erzeugen einer virtuellen Anwendung
WO2006118768A2 (en) Method and system for applet extensibilty application program interface (api)
CN101464843B (zh) 在多操作系统中共享显示卡的方法和计算机系统
DE4434528C2 (de) Verfahren zum Bereitstellen von Kartendienstefunktionen sowie Computersystem zum Ausführen eines solchen Verfahrens
CN107454457A (zh) 切换录屏直播分辨率的方法及装置
US6941105B1 (en) System and method to reduce the time and complexity of information technology classroom setup
US8810601B2 (en) Systems, methods, and articles of manufacture for virtual display
DE102015208665A1 (de) Verfahren und System zum Implementieren eines sicheren Sperrbildschirms
CN106897078A (zh) 一种信息获得方法及装置
US20060195586A1 (en) Sessions and terminals configured for binding in an extensible manner
CN111475801A (zh) 权限管理方法及系统
TWI489377B (zh) 控制媒體驅動器的方法、媒體驅動器設備以及非暫態性電腦可讀取媒體
WO2019022871A1 (en) JOINT ACCESS TO AN ISOLATED COMPUTER OBJECT

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20191018

RJ01 Rejection of invention patent application after publication