使用SetupDi系列函数进行设备信息的管理

 HDEVINFO hDevInfo; 
 SP_DEVINFO_DATA  DeviceInfoData;        
 int  bRet; 
 WCHAR   DeviceDriver[MAX_PATH];
 WCHAR   DeviceName[MAX_PATH]; 
 memset(&DeviceInfoData, 0 , sizeof(DeviceInfoData));
 DeviceInfoData.cbSize  =  sizeof(SP_DEVINFO_DATA);
 hDevInfo = SetupDiGetClassDevs((LPGUID)&GUID_DEVCLASS_NET, 0, 0,DIGCF_PRESENT);
 if (hDevInfo  ==  INVALID_HANDLE_VALUE)
 { 
  return 1;    
 }  
 for (DWORD   i=0;   SetupDiEnumDeviceInfo(hDevInfo, i, &DeviceInfoData); i++)   
 {   
      if ( !SetupDiGetDeviceRegistryProperty(hDevInfo, &DeviceInfoData, SPDRP_DRIVER, NULL, (PBYTE) DeviceDriver,  
      MAX_PATH, NULL) )   
      {   
           SetupDiDestroyDeviceInfoList(hDevInfo);
           return false;
      } 
  
//查询指定的设备
 
      if ( !SetupDiGetDeviceRegistryProperty(hDevInfo, &DeviceInfoData, SPDRP_DEVICEDESC, NULL, (PBYTE)
          DeviceName, MAX_PATH, NULL)   )  
      {
            SetupDiDestroyDeviceInfoList(hDevInfo);
            return -1;
      }  

  }
  break;
 }
 SetupDiDestroyDeviceInfoList(hDevInfo);

你可能感兴趣的:(职场,管理,休闲,设备)