SetVersionAsync method

Pointer<COMObject> SetVersionAsync(
  1. int desiredVersion,
  2. Pointer<NativeFunction<Function>> handler
)

Implementation

Pointer<COMObject> SetVersionAsync(
    int desiredVersion, Pointer<NativeFunction> handler) {
  final retValuePtr = calloc<COMObject>();

  final hr = _thisPtr.ref.vtable
          .elementAt(7)
          .cast<
              Pointer<
                  NativeFunction<
                      HRESULT Function(Pointer, Uint32 desiredVersion,
                          Pointer handler, Pointer<COMObject>)>>>()
          .value
          .asFunction<
              int Function(Pointer, int desiredVersion, Pointer handler,
                  Pointer<COMObject>)>()(
      _thisPtr.ref.lpVtbl, desiredVersion, handler, retValuePtr);

  if (FAILED(hr)) throw WindowsException(hr);

  return retValuePtr;
}