串口枚举类
一般计算机都带有串口,不同的计算机上所带有的串口数可能不同,比如一台计算机扩展了8个串口设备,或者零时插入一根USB转232的线,系统的串口数目可能发生变化,这种变化可能是固定的,也可能是变化的,在软件上要考虑这种变化,要能够随时探测系统当前究竟有多少个串口,为此写了个串口枚举类。每个串口设备均会在注册表中注册,通过读取注册表中的值就可以知道当前的串口数目和串口设备号等,源码如下:
#ifndef __CCOMPORTENUM_H__
#define __CCOMPORTENUM_H__
typedefstruct__comport_struct
{
intnum;
CStringname;
} COMPORT_DESC;
classCComPortEnum
{
public:
CComPortEnum();
virtual ~CComPortEnum();
public:
intGetNumber(CString &csstr);
intEnumAllComPort(void); // 枚举所有的串口,返回总串口数
CString &GetComPortNameFromPortNum(intnum); // 从串口设备号得到串口名
CString &GetComPortNameFromListNum(intlistnum);// 从列表选择号得到串口名
intGetPortNumFromComPortName(CString &name); // 从串口名得到串口设备号
intGetPortNumFromListNum(intlistnum); // 从列表选择号得到串口设备号
intGetComPortNumber(void) { returnm_nComPortNum; }
public: