public ICollection <G31DdcRadioInfo> List() { var count = _api.GetDeviceList(IntPtr.Zero, 0);//device Count; if (count < 0) { throw new InvalidOperationException("failed to get device count"); } if (count == 0) { return new G31DdcRadioInfo[] {} } ; var size = Marshal.SizeOf(typeof(NativeDefinitions.G31DDC_DEVICE_INFO)); return(List(count, size)); }