public int TryInvokeMethod(string name, object[] args, out object returnValue) { int hr = NativeMethods.S_OK; IDispatch dispatch = null; returnValue = null; try { if (IsDispatch) { dispatch = TryGetUniqueRCW <IDispatch>(); if (dispatch != null) { if (MarshalEx.Succeeded(hr = dispatch.InvokeMethod(name, args, out returnValue))) { } } } } catch { } finally { ComPtr.CleanupUniqueRCW(dispatch); } return(hr); }
public object InvokeMethod(string name, params object[] args) { return(dispatch.InvokeMethod(name, args)); }