Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / RpcCryptoRequest.cs / 1 / RpcCryptoRequest.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.InfoCards { using System; using System.IO; using System.ComponentModel; using System.Runtime.InteropServices; using Microsoft.InfoCards.Diagnostics; using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace; // // Summary: // Abstract client request class for RpcCrypto interface // abstract class RpcCryptoRequest { RpcCryptoContext m_context; // // Summary: // Base request Ctor: // protected RpcCryptoRequest( RpcCryptoContext context ) { m_context = context; } // // Summary: // Implementers request name. // public abstract string Name{get;} // // Summary: // Process the request. // public void Process() { MemoryStream ms = new MemoryStream(); MarshalOutArgs( ms ); byte[] buffer = ms.GetBuffer(); byte[] returnBuffer = null; // // Translate the win32 exceptions into a communication exception, // as if it occurs, // try { returnBuffer = NativeMcppMethods.RpcCryptoDispatchRequest( m_context.InterfaceHandle, m_context.ContextKey, Name, buffer, 0, Convert.ToInt32( ms.Length ) ); } catch( Win32Exception we ) { if( we.NativeErrorCode == (int) EventCode.SCARD_W_CANCELLED_BY_USER ) { throw IDT.ThrowHelperError( new UserCancelledException( null, we ) ); } else { throw IDT.ThrowHelperError( new CommunicationException( null, we ) ); } } ms = new MemoryStream( returnBuffer ); MarshalReturnArgs( ms ); } protected abstract void MarshalOutArgs( Stream stream ); protected abstract void MarshalReturnArgs( Stream stream ); } } // 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
- MetadataImporter.cs
- WebRequest.cs
- EnterpriseServicesHelper.cs
- DecoderFallback.cs
- ChunkedMemoryStream.cs
- DrawListViewColumnHeaderEventArgs.cs
- RegistrySecurity.cs
- FilterEventArgs.cs
- SpanIndex.cs
- SafeFileHandle.cs
- HtmlEncodedRawTextWriter.cs
- remotingproxy.cs
- DataViewSetting.cs
- SafeRightsManagementHandle.cs
- WebPartConnectionsEventArgs.cs
- HtmlTableRow.cs
- ListViewItemSelectionChangedEvent.cs
- OutputWindow.cs
- GACIdentityPermission.cs
- DbReferenceCollection.cs
- ObjectStateManager.cs
- PeerApplicationLaunchInfo.cs
- QilPatternFactory.cs
- ToolboxItemFilterAttribute.cs
- TouchEventArgs.cs
- ApplicationSettingsBase.cs
- DataSetSchema.cs
- FastEncoderWindow.cs
- DBDataPermissionAttribute.cs
- DescendantBaseQuery.cs
- IdentityValidationException.cs
- CodeExpressionRuleDeclaration.cs
- DesignerActionUIService.cs
- MetadataArtifactLoaderCompositeFile.cs
- EntitySqlQueryCacheKey.cs
- CodeArrayCreateExpression.cs
- ObservableDictionary.cs
- RadioButtonList.cs
- GenericPrincipal.cs
- HttpException.cs
- SerializerProvider.cs
- XmlTextAttribute.cs
- MediaCommands.cs
- SHA512Cng.cs
- SpoolingTask.cs
- CompiledRegexRunner.cs
- ClientScriptItemCollection.cs
- DomainLiteralReader.cs
- BamlLocalizationDictionary.cs
- PhonemeEventArgs.cs
- WindowsScrollBarBits.cs
- SyntaxCheck.cs
- LineServicesRun.cs
- CodeIndexerExpression.cs
- SerializationInfoEnumerator.cs
- EntityContainer.cs
- DelegateSerializationHolder.cs
- IISUnsafeMethods.cs
- DataGridHelper.cs
- BufferCache.cs
- UserUseLicenseDictionaryLoader.cs
- NodeLabelEditEvent.cs
- OutputWindow.cs
- SqlNotificationRequest.cs
- ColorConverter.cs
- DataColumnChangeEvent.cs
- SimpleApplicationHost.cs
- GroupBox.cs
- AutomationPatternInfo.cs
- EndOfStreamException.cs
- LastQueryOperator.cs
- MgmtResManager.cs
- WebConfigurationHost.cs
- CheckBoxBaseAdapter.cs
- XPathChildIterator.cs
- CommandConverter.cs
- CookieProtection.cs
- SortDescriptionCollection.cs
- NumberFormatInfo.cs
- TreeWalker.cs
- DateRangeEvent.cs
- Adorner.cs
- ZipIOExtraFieldPaddingElement.cs
- Image.cs
- Walker.cs
- LinqDataSourceContextData.cs
- Validator.cs
- SqlBulkCopyColumnMappingCollection.cs
- KeyEventArgs.cs
- SqlDependencyListener.cs
- UnsafeNativeMethods.cs
- ApplicationHost.cs
- SqlStream.cs
- DesignerCatalogPartChrome.cs
- SqlNodeTypeOperators.cs
- TypeListConverter.cs
- CompilerGeneratedAttribute.cs
- DataGridViewCellCollection.cs
- SoapSchemaExporter.cs
- XmlDataSourceNodeDescriptor.cs