问题一:
如何获得 设备管理器->端口(COM和LPT)->通讯端口(COMX)的信息?就是串口的信息,
1. 包括设备管理器里显示的“通讯端口(COMX)”这些字符
2. 通讯端口(COMX)属性对话框里面的《资源》页的输入/输出范围;是否使用自动设置
3. 通讯端口(COMX)属性对话框里面的《驱动程序》页的提供商信息
问题二:
何如更改该设备的输入输出范围和中断请求值?做的动作就是在 通讯端口(COMX)属性对话框里面的《资源》页里,选更改设置,并修改成需要的范围,比如:原来是3e8-3ef(COM3资源),我把它修改成2e8-2ef(COM4资源);原来是原来中断请求是03,我把它修改成04,07,09等等;我如何能做到?

解决方案 »

  1.   

    为了大家能更准确把握我的问题了,我重申一次:如何获得  设备管理器->端口(COM和LPT)->通讯端口(COMX)的信息?
    //**********  我要的是资源管理器影射出来的,针对某个COM口的资料********就是串口的信息,
    1. 包括设备管理器里显示的“通讯端口(COMX)”这些字符
    2. 通讯端口(COMX)属性对话框里面的《资源》页的输入/输出范围;是否使用自动设置
    3. 通讯端口(COMX)属性对话框里面的《驱动程序》页的提供商信息
    我想大家是误解我的问题为“何如读写串口”了,但我需要的不是这个。我简单解释一下我目前的工作吧,这样或许能更好的理解我要问的问题;
    我现在在做一个无线MODEM的用户界面,事实上就是目前所说的GPRS或CDMA无线上网的应用;手机模块是通过串口来控制的,而公司的MODEM却采用了USB接口,这里就涉及到了USB->COM口的转换;公司用的是一块芯片(MCU端)和一个DLL(PC端)来完成这样的转换(我更关心的是后者);换句话说,就是把一个USB口资源影射成一个COM口资源;而芯片商提供的是DRIVER层的DLL,能影射出一个虚拟的COM口;我的问题就出在这里,我希望能通过捕抓资源管理器里显示的提供商信息来获得哪个是这个DLL虚拟出来的COM口;并通过调用相关的API能修改这个COM的资源和中断< 比如原来是3e8-3ef(COM3资源),我把它修改成2e8-2ef(COM4资源)>。请大家不吝赐教!谢谢!
      

  2.   

    在注册表里有这些信息,怎样修改我就不知道了HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\MultifunctionAdapter\5\SerialController
      

  3.   

    你好,我也在寻找如何虚拟串口的问题,如有解决方法,清Email我一份,谢谢。
    [email protected]
      

  4.   

    TO xiaocha(小查) :感谢你的回帖!不知道你提供的是98的注册表结构还是2K的或XP的?它们之间有不同吗?都什么区别?愿听其祥!再次表示感谢!
      

  5.   

    TO firstshine(原曦) :问题解决后我会联系你的,你有什么好途径不如也帖出来大家交流一下。
      

  6.   

    有我一份:
    [email protected]
      

  7.   

    关注,如果能解决也请发给我一份[email protected]
      

  8.   

    TO  mazhayang(蚂蚱先生):能给个例子程序吗?
      

  9.   

    换个角度,在注册表里面有相关USB->COM信息:
    WIN2000下找HKEY_LOCAL_MACHINE\SYSTEM\ControlSet00X\Enum\USB\...
    或者是HKEY_LOCAL_MACHINE\SYSTEM\ControlSet00X\Enum\USBPORTS\...
    WIN98下找HKEY_LOCAL_MACHINE\Enum\USB\...
    里面应该是你要的东西,我们公司用的是PL2303,有什么不明白的找我。