对于曾经接入的设备,在注册表里面都会记录,如果用扫描注册表的方法获取设备,曾经的记录都会被扫描出来,且CreateFile打开端口是成功的,如果要得到当前接入的设备,需要用SetCommState方法来对注册表里面的记录进行筛选。另一种方法是SetupDiEnumDeviceInfo:获取当前接入的设备,再通过设备属性筛选。
两种方法的过程是相反的,前者是先得到特定的设备,不管是否接入,只要曾经接入就拿出来判断是否接入;后者则是先获取当前接入的设备,再根据特定的属性找出接入的设备中你需要的设备