一种自动打开扩展通道的方法及装置的制造方法

文档序号:9667280阅读:433来源:国知局
一种自动打开扩展通道的方法及装置的制造方法
【技术领域】
[0001] 本发明涉及信息安全领域,尤其涉及一种自动打开扩展通道的方法及装置。
【背景技术】
[0002] 现有技术中,在Windows平台下,通常打开扩展通道和智能卡读卡器通讯,必须首 先知道硬件的VID和PID。然后手动设置VID和PID组成一个路径,用RegOpenKey打开后, 在当前路径从〇索引开始遍历下一级的目录设备实例ID,获得设备实例ID后,把获得的 VID、PID、设备实例ID和根目录路径组成一个路径,然后再用RegOpenKey函数打开新获得 的路径,对注册表操作,比较耗时,而且很繁琐。

【发明内容】

[0003] 本发明的目的是为了解决现有技术中存在的问题,提供了一种自动打开扩展通道 的方法及装置。
[0004] 本发明采用的技术方案是:一种自动打开扩展通道的方法,包括:当主设备监控 到有外接设备连接时,执行以下操作:
[0005] 步骤S1 :所述主设备获取当前外接设备的设备信息,根据所述当前外接设备的设 备信息得到设备路径,根据所述设备路径得到当前外接设备的注册表路径;
[0006] 步骤S2 :所述主设备判断在所述当前外接设备的注册表路径下是否能够获取到 当前外接设备的预设子项,如果是,则执行步骤S3,否则结束;
[0007] 步骤S3 :所述主设备将所述当前外接设备的预设子项的值设置为第一预设值,打 开扩展通道成功。
[0008] 所述步骤S1之前,还包括:
[0009] 步骤al:所述主设备创建监控外接设备插拔线程;
[0010] 步骤a2 :所述主设备监控外接设备的插拔,当监控到有外接设备连接时,执行步 骤S1,当监控到有外接设备断开连接时,继续执行步骤a2。
[0011] 所述步骤S1之前还包括:所述主设备获取当前已安装的外接设备列表,并为之创 建外接设备索引表;
[0012] 所述步骤S1中,所述主设备获取所述外接设备的设备信息,具体为:所述主设备 从所述外接设备索引表中获取所述外接设备的设备信息;
[0013] 所述方法还包括:所述主设备创建监控外接设备插拔线程,监控外接设备的插拔, 当监控到有外接设备连接时,更新所述外接设备索引表。
[0014] 所述步骤S3中,所述将所述当前外接设备的预设子项的值设置为所述第一预设 值之后,还包括:所述主设备判断所述外接设备索引表中是否还有未进行通道扩展的外接 设备,如果是,则将其中一个未进行通过扩展的外接设备作为当前外接设备,返回步骤S1, 否则结束。
[0015] 所述判断所述外接设备索引表中是否还有未进行通道扩展的外接设备,具体为: 判断所述外接设备索引表中是否存在已扩展标识未置位的外接设备,如果是,则将其中一 个已扩展标识未置位的外接设备作为当前外接设备,否则结束;
[0016] 所述步骤S3中,所述将所述当前外接设备的预设子项的值设置为所述第一预设 值之后,还包括:所述主设备将所述当前外接设备的已扩展标识置位。
[0017] 所述步骤S1中,所述主设备获取当前外接设备的设备信息之后,还包括:根据所 述当前外接设备的设备信息,判断所述当前外接设备是否需要打开扩展通道,如果是,则继 续,否则结束。
[0018] 所述判断所述当前外接设备是否需要打开扩展通道,具体为:判断当前外接设备 的设备信息中的GUID值是否为预设设备类的GUID值,如果是,则继续,否则结束。
[0019] 所述步骤S1中,所述根据所述当前外接设备的设备信息得到设备路径,具体为: 所述主设备将当前外接设备的设备信息中的PID、VID和设备唯一标识按照第一预设格式 组合得到设备路径。
[0020] 所述步骤S1中,所述根据所述设备路径得到所述当前外接设备的注册表路径,具 体为:所述主设备获取主设备操作系统,根据所述设备路径和所述主设备操作系统得到当 前外接设备的注册表路径。
[0021] 所述根据所述设备路径和所述主设备操作系统得到当前外接设备的注册表路径, 具体为:将所述设备路径填充至所述主设备操作系统对应的预设注册表路径信息中。
[0022] 所述步骤S2中,判断为否时,还包括:所述主设备在所述当前外接设备的注册表 路径下创建预设子项,判断是否创建成功,如果是,则将创建的预设子项的值设置为第一预 设值,打开扩展通道成功,结束,否则报错,结束。
[0023] 所述方法还包括:所述主设备创建显示界面对话框,当所述主设备监控到有外接 设备连接时,在所述显示界面对话框上显示当前外接设备的插入信息,当所述主设备监控 到有外接设备拔出时,在所述显示界面对话框上显示当前外接设备的拔出信息。
[0024] -种自动打开扩展通道的装置,包括:
[0025] 监控模块,用于监控与外接设备的连接;
[0026] 获取模块,用于当所述监控模块监控到有外接设备连接时,获取当前外接设备的 设备信息;
[0027] 处理模块:用于当所述获取模块获取到当前外接设备的设备信息时,根据所述当 前外接设备的设备信息得到设备路径,根据所述设备路径得到当前外接设备的注册表路 径;
[0028] 第一判断模块,用于当所述处理模块得到当前外接设备的注册表路径时,判断在 所述当前外接设备的注册表路径下是否能够获取到所述当前外接设备的预设子项;
[0029] 设置模块,用于当所述第一判断模块判断为是时,将所述当前外接设备的预设子 项的值设置为第一预设值。
[0030] 所述监控模块包括:第一创建单元和第一监控单元;
[0031] 所述第一创建单元,用于创建监控外接设备插拔线程;
[0032] 所述第一监控单元,用于监控外接设备的插拔,当监控到有外接设备连接时,触发 所述获取模块,当监控到有外接设备断开连接时,继续触发所述第一监控单元。
[0033] 所述装置还包括创建模块和更新模块;
[0034] 所述创建模块,用于获取当前已安装的外接设备列表,并为之创建外接设备索引 表;
[0035] 所述获取模块,具体用于从所述外接设备索引表中获取所述外接设备的设备信 息;
[0036] 所述更新模块,用于当所述监控模块监控到有外接设备连接时,更新所述外接设 备索引表。
[0037] 所述装置还包括:第二判断模块和设定模块;
[0038] 所述第二判断模块,用于当所述设置模块设置完成后,判断所述外接设备索引表 中是否还有未进行通道扩展的外接设备;
[0039] 所述设定模块,用于当所述第二判断模块判断为是时,将其中一个未进行通过扩 展的外接设备作为当前外接设备,触发所述获取模块。
[0040] 所述第二判断模块,具体用于判断所述外接设备索引表中是否存在已扩展标识未 置位的外接设备;
[0041] 所述设定模块,具体用于当所述第二判断模块判断为是时,将其中一个已扩展标 识未置位的外接设备作为当前外接设备,触发所述获取模块;
[0042] 所述装置还包括置位模块,用于当设置模块设置完成时,将所述当前外接设备的 已扩展标识置位。
[0043] 所述装置还包括:第三判断模块,用于当所述获取模块获取到当前外接设备的设 备信息时,根据所述当前外接设备的设备信息,判断所述当前外接设备是否需要打开扩展 通道,判断为是时,触发所述处理模块。
[0044] 所述第三判断模块,具体用于判断当前外接设备的设备信息中的GUID值是否为 预设设备类的GUID值,判断为是时,触发所述处理模块。
[0045] 所述处理模块中,所述根据所述当前外接设备的设备信息得到设备路径,具体用 于将当前外接设备的设备信息中的PID、VID和设备唯一标识按照第一预设格式组合得到 设备路径。
[0046] 所述处理模块中,所述根据所述设备路径得到当前外接设备的注册表路径,具体 用于获取主设备操作系统,根据所述设备路径和所述主设备操作系统得到当前外接设备的 注册表路径。
[0047] 所述处理模块中,所述根据所述设备路径和所述主设备操作系统得到当前外接设 备的注册表路径,具体用于将所述设备路径填充至所述主设备操作系统对应的预设注册表 路径信息中。
[0048] 所述装置还包括创建模块,用于当所述第一判断模块判断为否时,在所述当前外 接设备的注册表路径下创建预设子项,判断是否创建成功;
[0049] 所述设置模块,还用于当所述创建模块创建预设子项成功时,将创建的预设子项 的值设置为第一预设值。
[0050] 所述装置还包括:显示模块;所述显示模块包括第二创建单元和第一显示单元;
[0051] 所述第二创建单元,用于创建显示界面对话框;
[0052] 所述第一显示单元,用于当所述监控模块监控到有外接设备连接时,在所述显示 界面对话框上显示当前外接设备的插入信息;用于当所述监控模块监控到有外接设备拔出 时,在所述显示界面对话框上显示当前外接设备的拔出信息。
[0053] 本发明取得的有益效果是:采用windows驱动程序的操作对注册表进行处理,能 够实现对插入的设备实时的检测,而且不需要每次再手动设置,简单方便,效率更高。
【附图说明】
[0054] 为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0055] 图1是本发明实施例1提供的一种自动打开扩展通道的方法流程图;
[0056] 图2是
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1