Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CompMod / System / ComponentModel / Design / DesigntimeLicenseContextSerializer.cs / 1305376 / DesigntimeLicenseContextSerializer.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.ComponentModel.Design { using System.Runtime.Remoting; using System.Runtime.Serialization.Formatters.Binary; using System.Runtime.Serialization; using System.Security; using System.Security.Permissions; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System; using Microsoft.Win32; using System.IO; using System.Diagnostics.CodeAnalysis; ////// [HostProtection(SharedState = true)] [System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.InheritanceDemand, Name = "FullTrust")] [System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.LinkDemand, Name="FullTrust")] public class DesigntimeLicenseContextSerializer { // not creatable... // private DesigntimeLicenseContextSerializer() { } ////// Provides support for design-time license context serialization. /// ////// public static void Serialize(Stream o, string cryptoKey, DesigntimeLicenseContext context) { IFormatter formatter = new BinaryFormatter(); formatter.Serialize(o, new object[] {cryptoKey, context.savedLicenseKeys}); } [SuppressMessage("Microsoft.Security", "CA2107:ReviewDenyAndPermitOnlyUsage")] // Use of PermitOnly here is appropriate. This was a previous war-approved security bug fix. internal static void Deserialize(Stream o, string cryptoKey, RuntimeLicenseContext context) { IFormatter formatter = new BinaryFormatter(); object obj; new SecurityPermission(SecurityPermissionFlag.SerializationFormatter).PermitOnly(); new SecurityPermission(SecurityPermissionFlag.SerializationFormatter).Assert(); try { obj = formatter.Deserialize(o); } finally { CodeAccessPermission.RevertAssert(); CodeAccessPermission.RevertPermitOnly(); } if (obj is object[]) { object[] value = (object[])obj; if (value[0] is string && (string)value[0] == cryptoKey) { context.savedLicenseKeys = (Hashtable)value[1]; } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Serializes the licenses within the specified design-time license context /// using the specified key and output stream. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.ComponentModel.Design { using System.Runtime.Remoting; using System.Runtime.Serialization.Formatters.Binary; using System.Runtime.Serialization; using System.Security; using System.Security.Permissions; using System.Collections; using System.ComponentModel; using System.Diagnostics; using System; using Microsoft.Win32; using System.IO; using System.Diagnostics.CodeAnalysis; ////// [HostProtection(SharedState = true)] [System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.InheritanceDemand, Name = "FullTrust")] [System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.LinkDemand, Name="FullTrust")] public class DesigntimeLicenseContextSerializer { // not creatable... // private DesigntimeLicenseContextSerializer() { } ////// Provides support for design-time license context serialization. /// ////// public static void Serialize(Stream o, string cryptoKey, DesigntimeLicenseContext context) { IFormatter formatter = new BinaryFormatter(); formatter.Serialize(o, new object[] {cryptoKey, context.savedLicenseKeys}); } [SuppressMessage("Microsoft.Security", "CA2107:ReviewDenyAndPermitOnlyUsage")] // Use of PermitOnly here is appropriate. This was a previous war-approved security bug fix. internal static void Deserialize(Stream o, string cryptoKey, RuntimeLicenseContext context) { IFormatter formatter = new BinaryFormatter(); object obj; new SecurityPermission(SecurityPermissionFlag.SerializationFormatter).PermitOnly(); new SecurityPermission(SecurityPermissionFlag.SerializationFormatter).Assert(); try { obj = formatter.Deserialize(o); } finally { CodeAccessPermission.RevertAssert(); CodeAccessPermission.RevertPermitOnly(); } if (obj is object[]) { object[] value = (object[])obj; if (value[0] is string && (string)value[0] == cryptoKey) { context.savedLicenseKeys = (Hashtable)value[1]; } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Serializes the licenses within the specified design-time license context /// using the specified key and output stream. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DelayedRegex.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- BitmapEffect.cs
- BitmapDownload.cs
- SessionEndingCancelEventArgs.cs
- LinqDataSourceInsertEventArgs.cs
- OdbcEnvironmentHandle.cs
- WebServiceErrorEvent.cs
- FixedSOMLineCollection.cs
- RSAProtectedConfigurationProvider.cs
- SafeLibraryHandle.cs
- PackageDigitalSignatureManager.cs
- CompilationUtil.cs
- OleDbWrapper.cs
- ImageCodecInfoPrivate.cs
- StringCollectionMarkupSerializer.cs
- DataSourceHelper.cs
- TreeViewCancelEvent.cs
- HttpProtocolReflector.cs
- QuadraticBezierSegment.cs
- dataprotectionpermission.cs
- AffineTransform3D.cs
- ServiceActivationException.cs
- InvalidCastException.cs
- CoordinationService.cs
- Calendar.cs
- HttpRuntimeSection.cs
- NetworkInformationPermission.cs
- CodeDirectiveCollection.cs
- TdsParserStaticMethods.cs
- HttpRequestWrapper.cs
- Stylesheet.cs
- XmlTextWriter.cs
- Timer.cs
- ProtectedConfigurationSection.cs
- CompiledQueryCacheEntry.cs
- UriTemplate.cs
- AsnEncodedData.cs
- AccessViolationException.cs
- ContentWrapperAttribute.cs
- DataGridViewToolTip.cs
- PointHitTestParameters.cs
- RegexCaptureCollection.cs
- XPathAncestorQuery.cs
- AlternateViewCollection.cs
- SqlCharStream.cs
- MemberMaps.cs
- PeerEndPoint.cs
- X509UI.cs
- COAUTHIDENTITY.cs
- CaseStatementProjectedSlot.cs
- EntityDataSourceChangingEventArgs.cs
- shaper.cs
- Timeline.cs
- FixedDSBuilder.cs
- DefaultAsyncDataDispatcher.cs
- TextElementEnumerator.cs
- FormsAuthenticationConfiguration.cs
- RecognizedPhrase.cs
- DataMemberConverter.cs
- HttpPostedFile.cs
- TextParagraphProperties.cs
- StringStorage.cs
- CachedPathData.cs
- WebBrowserNavigatedEventHandler.cs
- DbXmlEnabledProviderManifest.cs
- ComponentResourceKey.cs
- UseManagedPresentationBindingElementImporter.cs
- SQLMembershipProvider.cs
- String.cs
- ValidatorAttribute.cs
- TypeUsageBuilder.cs
- FontWeights.cs
- LocalizationParserHooks.cs
- ArithmeticException.cs
- ResourcePermissionBaseEntry.cs
- RedistVersionInfo.cs
- X509Certificate2Collection.cs
- ProgressBar.cs
- PasswordPropertyTextAttribute.cs
- HostSecurityManager.cs
- PreservationFileReader.cs
- DataGridViewRowPostPaintEventArgs.cs
- PrimitiveXmlSerializers.cs
- RegistryKey.cs
- SecurityKeyIdentifierClause.cs
- BaseHashHelper.cs
- UserPersonalizationStateInfo.cs
- KeyValuePair.cs
- OdbcConnectionPoolProviderInfo.cs
- IntegerValidator.cs
- MethodAccessException.cs
- _ContextAwareResult.cs
- QilVisitor.cs
- HtmlTitle.cs
- CompressEmulationStream.cs
- DecoderExceptionFallback.cs
- RoleManagerEventArgs.cs
- Message.cs
- RuleRefElement.cs