zoukankan      html  css  js  c++  java
  • Anroid 手机助手 详细解析 概述(二)

    这篇主要说一下手机插入之后的一些动作。

    1)  捕获窗口消息

    插入拔出一个USB设备windows 会给所有的窗口发送特定的消息,只要我们捕获这些消息就可以处理设备插入和拔出。需要注意的是插入或者拔出一个设备的时候windows 会在短时间里面通知N多次的消息,所以处理的时候最好注意一下,只处理最后一次消息就可以了。目前我知道的四个消息

    DBT_DEVNODES_CHANGED

    DBT_DEVICEARRIVAL

    DBT_DEVICEREMOVECOMPLETE

    DBT_DEVICEQUERYREMOVE

    有的时候由于数据线或者手机本身的问题,插入之后没有任何反应,这个时候可以打开设备管理器查看一下是否有设备,如果设备管理器没有你的手机,那就需要换个数据线或者换个USB 口了。打开设备管理器查看我的手机

    2   枚举USB 设备

             我的电脑上枚举出来的如下图

    上面枚举出来的设备都有一个规律,以USB开头,然后是VID_  , PID_,还有后面一串信息。

    3)  获取VID,PID

           获取到了USB 设备之后使用正则表达式或者其他办法把VID,PID取出来,还有最后面的一串字符串。

             比如:

           USBVID_8087&PID_00245&69DDA25&0&1    VID就是8087,PID就是0024,还有后面的一串字符5&69DDA25&0&1。

    4)  手机识别匹配

                我是先匹配VID,PID,如果VID,PID没有命中,则使用后面的那串字符串进行模糊匹配。这里就有个问题,去哪里匹配。 首先你需要一个识别的数据表,这个数据表保存了所有的手机的信息。下图是我的识别库的格式,只有有这些数据库才能正确识别到手机,否则是识别不了的。

    转让Android,IOS 手机助手各种技术资料,文档,以及源码,有需要的可以联系我QQ: 2506314894

  • 相关阅读:
    SQL Server 2008 数据库回滚到某个时间点
    SQL Server 2008以上误操作数据库恢复方法——日志尾部备份
    C# BindingSource
    何谓SQL Server参数嗅探
    mongodb获取具体某一天的查询语句
    给MongoDB添加索引
    MongoDB 学习笔记四 C#调用MongoDB
    Access MongoDB Data with Entity Framework 6
    Ruby 和 OpenSSL CA 证书的问题
    解决方法:配置群集时# gem install redis 报错:Unable to require openssl, install OpenSSL and rebuild ruby
  • 原文地址:https://www.cnblogs.com/riskyer/p/3424033.html
Copyright © 2011-2022 走看看