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
- TdsParserSafeHandles.cs
- DocumentApplicationJournalEntry.cs
- QueueProcessor.cs
- FileDialog.cs
- DeclarationUpdate.cs
- ScriptReferenceEventArgs.cs
- SiteOfOriginPart.cs
- OdbcDataReader.cs
- OleDbConnectionFactory.cs
- ServiceDesigner.cs
- LookupNode.cs
- ProviderUtil.cs
- TransformerTypeCollection.cs
- TextureBrush.cs
- EmptyEnumerator.cs
- DataMemberConverter.cs
- DataGridPageChangedEventArgs.cs
- HttpAsyncResult.cs
- NodeFunctions.cs
- BamlMapTable.cs
- MessageBuilder.cs
- PropertyKey.cs
- _ProxyRegBlob.cs
- ColorDialog.cs
- UpdateInfo.cs
- TextFormatterContext.cs
- WmlLinkAdapter.cs
- GridViewCancelEditEventArgs.cs
- EventLogInternal.cs
- ConcurrentQueue.cs
- InputDevice.cs
- TextCollapsingProperties.cs
- Point3DValueSerializer.cs
- KeyTimeConverter.cs
- HtmlTitle.cs
- recordstatescratchpad.cs
- ToolBarButtonClickEvent.cs
- PrintController.cs
- MergeFailedEvent.cs
- MetafileHeaderWmf.cs
- HwndHostAutomationPeer.cs
- AspNetSynchronizationContext.cs
- ExtendedProperty.cs
- ToolStripButton.cs
- PagesSection.cs
- DataService.cs
- ListQueryResults.cs
- WebPartsPersonalization.cs
- Compiler.cs
- StartFileNameEditor.cs
- SystemFonts.cs
- GeneralTransform2DTo3D.cs
- SocketElement.cs
- WindowHelperService.cs
- AppDomainUnloadedException.cs
- AppSettingsExpressionBuilder.cs
- Menu.cs
- ChangePassword.cs
- GridViewDeletedEventArgs.cs
- FontWeight.cs
- FakeModelItemImpl.cs
- RawStylusInputCustomData.cs
- AttributeCollection.cs
- ContentElementAutomationPeer.cs
- SystemColors.cs
- HtmlControlPersistable.cs
- xsdvalidator.cs
- WebPartVerbsEventArgs.cs
- CellPartitioner.cs
- ArrayHelper.cs
- XsdDuration.cs
- AssemblyBuilder.cs
- SymbolType.cs
- DefaultCommandExtensionCallback.cs
- FontSource.cs
- GenericsNotImplementedException.cs
- GridViewCommandEventArgs.cs
- SessionState.cs
- _LocalDataStoreMgr.cs
- Boolean.cs
- WebPartCatalogAddVerb.cs
- TabPanel.cs
- Attributes.cs
- DataGridCommandEventArgs.cs
- NativeMethods.cs
- StaticFileHandler.cs
- ClientFormsAuthenticationMembershipProvider.cs
- UnorderedHashRepartitionStream.cs
- XXXOnTypeBuilderInstantiation.cs
- PnrpPermission.cs
- EntitySqlQueryBuilder.cs
- ResourceProperty.cs
- PermissionSet.cs
- EntityDesignerUtils.cs
- PolyQuadraticBezierSegment.cs
- TraceListener.cs
- DataBoundControlAdapter.cs
- SafeIUnknown.cs
- Funcletizer.cs
- ping.cs