iids property

List<String> iids

Returns the interface IIDs that are implemented by the current Windows Runtime class.

The IUnknown and IInspectable interfaces are excluded.

Implementation

List<String> get iids {
  final pIIDCount = calloc<Uint32>();
  final pIIDs = calloc<Pointer<GUID>>();

  try {
    final hr = getIids(pIIDCount, pIIDs);
    if (SUCCEEDED(hr)) {
      return [
        for (var i = 0; i < pIIDCount.value; i++) pIIDs.value[i].toString()
      ];
    } else {
      throw WindowsException(hr);
    }
  } finally {
    free(pIIDCount);
    free(pIIDs);
  }
}