如何判断一个端口是否支持obex功能

liwz123 2006-02-22 07:33:25
描述:
1,手机通过USB连接PC;
2,安装驱动,成功后,PC显示出2个端口:USB OBEX(Com13)/Device Management(Com14);
3,打开PC上的一个OBEX 工具,它自动找到了Com13(它认为Com13支持Obex),注意:此时OBEX连接尚未进行。

问题:
如何判断端口Com13支持obex?

请各位大虾不吝指教。
即使没有遇到过相似问题的,有什么建议,也请提出。

谢谢!
...全文
128 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Atomictry 2006-02-24
  • 打赏
  • 举报
回复
要么通过设备名来判断(该设备用的是否就是OBEX协议)。
-->>没有找到更好的方法,我就是通过设备名来找的。

要么通过发送一个包到手机,看是否有回应。
-->>用串口工具抓包就能知道,pc的obex工具是不是先发包来判断obex口的。

liwz123 2006-02-24
  • 打赏
  • 举报
回复
Up下
liwz123 2006-02-23
  • 打赏
  • 举报
回复
没人了解吗?
有没有一些建议?
liwz123 2006-02-23
  • 打赏
  • 举报
回复
谢谢Atomictry:

要么通过设备名来判断(该设备用的是否就是OBEX协议)。
--该工具有可能通过设备名来判断;

要么通过发送一个包到手机,看是否有回应。
--手机连上USB后,PC上的OBEX工具没有和手机在该串口进行一些数据交互;该工具应该不是使用这种方法。

不知大家还有什么建议没有?
Atomictry 2006-02-23
  • 打赏
  • 举报
回复
OBEX是协议层,仅仅通过串口号并不能得知是否支持OBEX。
要么通过设备名来判断(该设备用的是否就是OBEX协议)。
要么通过发送一个包到手机,看是否有回应。
liwz123 2006-02-23
  • 打赏
  • 举报
回复
To Atomictry:
Thanks.
得到串口名好像意义不大,因为FriendlyName不一定能表明该虚拟的串口支持OBEX。
不过还是谢谢了。

一些怀疑点:
1,手机连上USB后,PC上的Tool工具和手机在该串口进行一些数据交互,这样来判断该串口是否支持OBEX;
结论:通过端口监控工具发现没有这种可能。
2,通过Driver判断;不知可不可行?

希望大虾们给点意见。
Atomictry 2006-02-23
  • 打赏
  • 举报
回复
你说的OBEX工具应该是枚举当前的串口,并搜索了当前注册表键值:
1. 枚举当前所有的串口:
可以通过微软提供的Get*什么函数得到所有串口
也可以通过枚举注册表HKEY_LOCAL_MACHINE\HARDWARE\\DEVICEMAP\\SERIALCOMM得到
2. 判断该端口是否是你所用的口:
安装了固定设备的驱动后,会在HKEY_LOCAL_MACHINE\SYSTEM\\CurrentControlSet\\Enum\USB下留下它Vid以及相关信息,可以通过枚举这个Vid下面的FriendlyName得到你的串口名。

以上是建立在串口是通过虚拟USB得到的,windows2000。其他不详。
liwz123 2006-02-23
  • 打赏
  • 举报
回复
继续UP,期待高手......

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧