@msdn=https://docs.microsoft.com/en-us/windows/desktop/api/cfgmgr32/nf-cfgmgr32-cm_get_device_interface_lista @pinvoke=http://pinvoke.net/$$$.htm Summary: The CM_Get_Device_Interface_List function retrieves a list of device interface instances that belong to a specified device interface class. !!!!C# Signature: [DllImport("CfgMgr32.dll", CharSet = CharSet.Unicode)] static extern uint CM_Get_Device_Interface_List(ref Guid interfaceClassGuid, string deviceID, char[] buffer, uint bufferLength, uint flags); Documentation: CM_Get_Device_Interface_List@msdn on MSDN !!!!Sample Code: const ulong CM_GETIDLIST_FILTER_PRESENT = 0x00000100; const uint CM_GET_DEVICE_INTERFACE_LIST_PRESENT = 0x0; const int CR_SUCCESS = 0x0; static Guid GUID_DEVINTERFACE_COMPORT = new Guid("{86E0D1E0-8089-11D0-9CE4-08003E301F73}"); public static string[] GetPortNames() { var cr = CM_Get_Device_Interface_List_Size(out uint size, ref GUID_DEVINTERFACE_COMPORT, null, CM_GET_DEVICE_INTERFACE_LIST_PRESENT); if (cr == CR_SUCCESS && size != 0) { char[] data = new char[size]; cr = CM_Get_Device_Interface_List(ref GUID_DEVINTERFACE_COMPORT, null, data, (uint)data.Length, CM_GET_DEVICE_INTERFACE_LIST_PRESENT); if (cr == CR_SUCCESS) return new string(data).Split('\0').ToList().Where(m=>!string.IsNullOrEmpty(m)).ToArray(); } return null; }
Edit cfgmgr32.CM_Get_D...
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.