Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / ComIntegration / MonikerBuilder.cs / 1 / MonikerBuilder.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.ComIntegration { using System; using System.Reflection; using System.Collections.Generic; using System.Threading; using System.ServiceModel.Channels; using System.Runtime.Remoting.Proxies; using System.Runtime.Remoting; using System.Runtime.Remoting.Services; using System.Runtime.InteropServices; internal class MonikerBuilder : IProxyCreator { ComProxy comProxy = null; private MonikerBuilder () { } void IDisposable.Dispose () { } ComProxy IProxyCreator.CreateProxy (IntPtr outer, ref Guid riid) { if ((riid != typeof (IMoniker).GUID) && (riid != typeof (IParseDisplayName).GUID)) throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidCastException(SR.GetString(SR.NoInterface, riid))); if (outer == IntPtr.Zero) { DiagnosticUtility.DebugAssert("OuterProxy cannot be null"); throw DiagnosticUtility.ExceptionUtility.ThrowHelperInternal(false); } if (comProxy == null) { ServiceMonikerInternal moniker = null; try { moniker = new ServiceMonikerInternal (); comProxy = ComProxy.Create (outer, moniker, moniker); return comProxy; } finally { if ((comProxy == null) && (moniker != null)) ((IDisposable)moniker).Dispose (); } } else return comProxy.Clone (); } bool IProxyCreator.SupportsErrorInfo (ref Guid riid) { if ((riid != typeof (IMoniker).GUID) && (riid != typeof (IParseDisplayName).GUID)) return false; else return true; } bool IProxyCreator.SupportsDispatch () { return false; } bool IProxyCreator.SupportsIntrinsics () { return false; } public static MarshalByRefObject CreateMonikerInstance () { IProxyCreator serviceChannelBuilder = new MonikerBuilder ();; IProxyManager proxyManager = new ProxyManager (serviceChannelBuilder); Guid iid = typeof (IMoniker).GUID; IntPtr ppv = OuterProxyWrapper.CreateOuterProxyInstance (proxyManager, ref iid); MarshalByRefObject ret = EnterpriseServicesHelper.WrapIUnknownWithComObject (ppv) as MarshalByRefObject; Marshal.Release(ppv); return ret; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LineSegment.cs
- ConditionCollection.cs
- NativeMethods.cs
- AttachedAnnotation.cs
- ServiceNameElement.cs
- XmlLanguageConverter.cs
- objectresult_tresulttype.cs
- NotifyInputEventArgs.cs
- DataGridViewButtonColumn.cs
- FormsAuthenticationTicket.cs
- ReferencedAssembly.cs
- InputMethod.cs
- LogReservationCollection.cs
- XmlSchemaException.cs
- GeneralTransform3DTo2DTo3D.cs
- HwndHost.cs
- _AutoWebProxyScriptHelper.cs
- RepeaterItemCollection.cs
- ValuePattern.cs
- DbParameterCollectionHelper.cs
- ApplicationDirectory.cs
- SchemaRegistration.cs
- SafeArrayTypeMismatchException.cs
- WebHttpBehavior.cs
- XamlPoint3DCollectionSerializer.cs
- SqlCommandSet.cs
- Timeline.cs
- ISFTagAndGuidCache.cs
- FormParameter.cs
- TriggerAction.cs
- RSAPKCS1KeyExchangeFormatter.cs
- VirtualDirectoryMapping.cs
- ClientScriptManager.cs
- DynamicRouteExpression.cs
- SynchronizingStream.cs
- ChannelEndpointElementCollection.cs
- RawMouseInputReport.cs
- UserControl.cs
- filewebrequest.cs
- SqlTypeSystemProvider.cs
- ObjectContext.cs
- UntypedNullExpression.cs
- DiscreteKeyFrames.cs
- BitmapFrame.cs
- WebPartHelpVerb.cs
- ProofTokenCryptoHandle.cs
- GeometryConverter.cs
- RequestStatusBarUpdateEventArgs.cs
- DiscoveryDocumentReference.cs
- EntityCommandCompilationException.cs
- Delegate.cs
- FilterableData.cs
- ISAPIApplicationHost.cs
- HttpHandlerActionCollection.cs
- ConfigXmlText.cs
- DocumentPaginator.cs
- ProviderConnectionPoint.cs
- DbMetaDataFactory.cs
- EntityConnectionStringBuilderItem.cs
- NativeCppClassAttribute.cs
- CompiledIdentityConstraint.cs
- RenderData.cs
- EntityDataSourceColumn.cs
- RegexBoyerMoore.cs
- HwndSourceKeyboardInputSite.cs
- SQLBytesStorage.cs
- StylusCollection.cs
- GridViewDeleteEventArgs.cs
- Transform3D.cs
- HttpServerVarsCollection.cs
- Byte.cs
- EmptyStringExpandableObjectConverter.cs
- BamlResourceDeserializer.cs
- Win32PrintDialog.cs
- DetailsViewInsertEventArgs.cs
- SpinWait.cs
- CodeDomComponentSerializationService.cs
- XmlSerializableReader.cs
- BeginStoryboard.cs
- FontUnit.cs
- Soap12ProtocolReflector.cs
- ControlCachePolicy.cs
- WebServiceReceive.cs
- ReflectionTypeLoadException.cs
- ActivationServices.cs
- PointAnimationUsingKeyFrames.cs
- WebPartDisplayModeEventArgs.cs
- OletxVolatileEnlistment.cs
- ProgressBarAutomationPeer.cs
- ParsedRoute.cs
- CompilerTypeWithParams.cs
- SmiMetaDataProperty.cs
- NameValueCollection.cs
- TextCharacters.cs
- Point3DCollection.cs
- DrawingAttributeSerializer.cs
- X500Name.cs
- Stylesheet.cs
- TextBoxLine.cs
- XmlFormatExtensionPrefixAttribute.cs