Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ TryGetOrCreateObjectForComInstanceInternal() [1/2]

static bool System.Runtime.InteropServices.ComWrappers.TryGetOrCreateObjectForComInstanceInternal ( ComWrappers impl,
IntPtr externalComObject,
IntPtr innerMaybe,
CreateObjectFlags flags,
object wrapperMaybe,
out object retValue )
inlinestaticprivate

Definition at line 136 of file ComWrappers.cs.

137 {
138 if (externalComObject == IntPtr.Zero)
139 {
140 throw new ArgumentNullException("externalComObject");
141 }
142 if (innerMaybe != IntPtr.Zero && !flags.HasFlag(CreateObjectFlags.Aggregation))
143 {
144 throw new InvalidOperationException(SR.InvalidOperation_SuppliedInnerMustBeMarkedAggregation);
145 }
146 object o = wrapperMaybe;
147 retValue = null;
148 return TryGetOrCreateObjectForComInstanceInternal(ObjectHandleOnStack.Create(ref impl), impl.id, externalComObject, innerMaybe, flags, ObjectHandleOnStack.Create(ref o), ObjectHandleOnStack.Create(ref retValue));
149 }
static bool TryGetOrCreateObjectForComInstanceInternal(ComWrappers impl, IntPtr externalComObject, IntPtr innerMaybe, CreateObjectFlags flags, object wrapperMaybe, out object retValue)

References System.Runtime.InteropServices.ComWrappers.id, System.SR.InvalidOperation_SuppliedInnerMustBeMarkedAggregation, System.Runtime.InteropServices.ComWrappers.TryGetOrCreateObjectForComInstanceInternal(), and System.IntPtr.Zero.

Referenced by System.Runtime.InteropServices.ComWrappers.GetOrCreateObjectForComInstance(), System.Runtime.InteropServices.ComWrappers.GetOrRegisterObjectForComInstance(), and System.Runtime.InteropServices.ComWrappers.TryGetOrCreateObjectForComInstanceInternal().