Beispiel #1
0
        public static IntPtr CreateOuterProxyInstance(IProxyManager proxyManager, ref Guid riid)
        {
            IntPtr         zero          = IntPtr.Zero;
            IProxyProvider proxyProvider = proxySupport.GetProxyProvider();

            if (proxyProvider == null)
            {
                throw Fx.AssertAndThrowFatal("Proxy Provider cannot be NULL");
            }
            Guid guid      = riid;
            int  errorCode = proxyProvider.CreateOuterProxyInstance(proxyManager, ref guid, out zero);

            Marshal.ReleaseComObject(proxyProvider);
            if (errorCode != HR.S_OK)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new COMException(System.ServiceModel.SR.GetString("FailedProxyProviderCreation"), errorCode));
            }
            return(zero);
        }
Beispiel #2
0
        public static IntPtr CreateOuterProxyInstance(IProxyManager proxyManager, ref Guid riid)
        {
            IntPtr         pOuter        = IntPtr.Zero;
            IProxyProvider proxyProvider = proxySupport.GetProxyProvider();

            if (proxyProvider == null)
            {
                throw Fx.AssertAndThrowFatal("Proxy Provider cannot be NULL");
            }
            Guid riid2 = riid;
            int  hr    = proxyProvider.CreateOuterProxyInstance(proxyManager, ref riid2, out pOuter);

            Marshal.ReleaseComObject(proxyProvider);

            if (hr != HR.S_OK)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new COMException(SR.GetString(SR.FailedProxyProviderCreation), hr));
            }

            return(pOuter);
        }