Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / CompMod / System / ComponentModel / Design / DesigntimeLicenseContextSerializer.cs / 1 / 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
- PassportAuthenticationEventArgs.cs
- DataGridViewColumnHeaderCell.cs
- PingReply.cs
- ScriptingSectionGroup.cs
- InertiaTranslationBehavior.cs
- ServiceProviders.cs
- StandardTransformFactory.cs
- MissingMethodException.cs
- BaseCodeDomTreeGenerator.cs
- Help.cs
- ExplicitDiscriminatorMap.cs
- XPathNodePointer.cs
- TimeoutException.cs
- BitStack.cs
- PropertyTabChangedEvent.cs
- PartitionedStream.cs
- IFormattable.cs
- HotCommands.cs
- XmlILConstructAnalyzer.cs
- ELinqQueryState.cs
- BamlLocalizabilityResolver.cs
- SerializationAttributes.cs
- DataViewSetting.cs
- WorkflowRuntimeService.cs
- AmbiguousMatchException.cs
- DbConnectionHelper.cs
- TextSegment.cs
- TracePayload.cs
- SystemException.cs
- IdentityModelStringsVersion1.cs
- WebExceptionStatus.cs
- FontFamily.cs
- RequestTimeoutManager.cs
- DataBoundControlHelper.cs
- Configuration.cs
- X509CertificateTrustedIssuerElement.cs
- Pair.cs
- AnonymousIdentificationSection.cs
- ApplicationInfo.cs
- CalendarDesigner.cs
- ColorBlend.cs
- IgnoreSection.cs
- EntityModelSchemaGenerator.cs
- SqlDuplicator.cs
- DBBindings.cs
- ProviderSettingsCollection.cs
- XmlNodeComparer.cs
- _TLSstream.cs
- Update.cs
- NotSupportedException.cs
- CheckBoxPopupAdapter.cs
- MessageBox.cs
- ErasingStroke.cs
- CompensateDesigner.cs
- TouchFrameEventArgs.cs
- BitmapSizeOptions.cs
- IdentityManager.cs
- Point3DValueSerializer.cs
- RulePatternOps.cs
- InitializeCorrelation.cs
- Condition.cs
- _ContextAwareResult.cs
- DirectionalLight.cs
- CipherData.cs
- XmlSchemaSimpleContentRestriction.cs
- SHA1.cs
- CodePrimitiveExpression.cs
- DbgCompiler.cs
- ResumeStoryboard.cs
- XhtmlBasicTextViewAdapter.cs
- CodeMemberMethod.cs
- XamlBrushSerializer.cs
- ListViewGroup.cs
- ProtocolsSection.cs
- FunctionDetailsReader.cs
- NotifyIcon.cs
- XmlSchemaFacet.cs
- AddIn.cs
- util.cs
- DrawingGroupDrawingContext.cs
- FormViewAutoFormat.cs
- NullReferenceException.cs
- TimeoutValidationAttribute.cs
- PlatformCulture.cs
- RecordBuilder.cs
- TableLayoutPanelDesigner.cs
- PrePostDescendentsWalker.cs
- VScrollProperties.cs
- AttributeCollection.cs
- Converter.cs
- XmlSchemaSimpleTypeUnion.cs
- Buffer.cs
- SqlDataRecord.cs
- UrlPropertyAttribute.cs
- Padding.cs
- NumericUpDownAccelerationCollection.cs
- TextControlDesigner.cs
- MD5.cs
- LightweightCodeGenerator.cs
- Directory.cs