Combine() public static method

public static Combine ( object rcw, Guid iid, int dispid, Delegate d ) : void
rcw object
iid Guid
dispid int
d Delegate
return void
 public override void AddEventHandler(object target, Delegate handler)
 {
     if (Marshal.IsComObject(target))
     {
         // retrieve sourceIid and dispid
         GetDataForComInvocation(_innerEventInfo, out Guid sourceIid, out int dispid);
         ComEventsHelper.Combine(target, sourceIid, dispid, handler);
     }
     else
     {
         // we are dealing with a managed object - just add the delegate through reflection
         _innerEventInfo.AddEventHandler(target, handler);
     }
 }
 public override void AddEventHandler(object target, Delegate handler)
 {
     if (Marshal.IsComObject(target))
     {
         Guid guid;
         int  num;
         GetDataForComInvocation(this._innerEventInfo, out guid, out num);
         new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand();
         ComEventsHelper.Combine(target, guid, num, handler);
     }
     else
     {
         this._innerEventInfo.AddEventHandler(target, handler);
     }
 }