Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- NavigatorInput.cs
- SqlUtil.cs
- GraphicsPathIterator.cs
- SmtpAuthenticationManager.cs
- ObjectNotFoundException.cs
- ZoomingMessageFilter.cs
- MailAddressCollection.cs
- TraceSource.cs
- ContextMenuStrip.cs
- InputScope.cs
- DataGridColumnCollection.cs
- NoneExcludedImageIndexConverter.cs
- LineUtil.cs
- XmlSchemaChoice.cs
- X509ClientCertificateAuthenticationElement.cs
- StateMachine.cs
- XmlBufferReader.cs
- LoginName.cs
- PageAsyncTask.cs
- OdbcInfoMessageEvent.cs
- WindowsTitleBar.cs
- WebPartConnectionsConfigureVerb.cs
- DebugTraceHelper.cs
- HttpWebResponse.cs
- SignedXmlDebugLog.cs
- CultureTableRecord.cs
- ProfileGroupSettings.cs
- ConnectionManagementSection.cs
- ExpressionsCollectionConverter.cs
- X509Certificate2.cs
- ToolStripContainerActionList.cs
- RtfFormatStack.cs
- XamlParser.cs
- HwndAppCommandInputProvider.cs
- Ticks.cs
- DataGridViewTextBoxColumn.cs
- arclist.cs
- ScriptControl.cs
- SqlTriggerContext.cs
- MouseGestureValueSerializer.cs
- DrawListViewItemEventArgs.cs
- SqlDataRecord.cs
- VectorAnimationBase.cs
- Parser.cs
- CodeTryCatchFinallyStatement.cs
- XmlUnspecifiedAttribute.cs
- ScriptingProfileServiceSection.cs
- TextDecoration.cs
- SqlVisitor.cs
- OracleException.cs
- MenuItemCollection.cs
- EncryptedXml.cs
- XNodeSchemaApplier.cs
- InvalidOperationException.cs
- dataprotectionpermission.cs
- Vector3DCollectionConverter.cs
- StyleBamlTreeBuilder.cs
- FontFamilyValueSerializer.cs
- SizeConverter.cs
- PathSegmentCollection.cs
- DataGridViewBindingCompleteEventArgs.cs
- MergePropertyDescriptor.cs
- AnchoredBlock.cs
- MatrixConverter.cs
- ControlValuePropertyAttribute.cs
- QuotedPairReader.cs
- SerializationEventsCache.cs
- ScalarType.cs
- LinqMaximalSubtreeNominator.cs
- PreDigestedSignedInfo.cs
- DataTableExtensions.cs
- CharStorage.cs
- WebPart.cs
- Function.cs
- CodeMethodMap.cs
- XmlSchemaObjectCollection.cs
- TextRunCacheImp.cs
- NumberSubstitution.cs
- SimpleTypeResolver.cs
- FileSystemInfo.cs
- TableLayoutPanelCodeDomSerializer.cs
- CounterSample.cs
- DesignerTransactionCloseEvent.cs
- RoleGroup.cs
- DataGridViewControlCollection.cs
- FunctionUpdateCommand.cs
- CodeTypeReference.cs
- SourceFileInfo.cs
- XD.cs
- RadioButton.cs
- Msec.cs
- XmlExpressionDumper.cs
- PasswordRecovery.cs
- SiteMapNodeItem.cs
- UniqueEventHelper.cs
- VisualProxy.cs
- HTTP_SERVICE_CONFIG_URLACL_PARAM.cs
- TableCell.cs
- CookielessHelper.cs
- SqlUtil.cs