Code:
/ 4.0 / 4.0 / untmp / 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. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PrintingPermission.cs
- AppSettingsReader.cs
- UIElement.cs
- HyperLink.cs
- ContentDisposition.cs
- ClientSideQueueItem.cs
- Base64Stream.cs
- _Connection.cs
- ApplicationId.cs
- FontStretch.cs
- VisualSerializer.cs
- ContentFileHelper.cs
- SoapAttributeOverrides.cs
- BlockExpression.cs
- ColumnClickEvent.cs
- MetadataItem_Static.cs
- StateMachine.cs
- clipboard.cs
- WorkBatch.cs
- InvalidCastException.cs
- BindingSource.cs
- DeflateStream.cs
- EnumConverter.cs
- NetworkInformationException.cs
- Mapping.cs
- TextServicesManager.cs
- BitmapEffectCollection.cs
- ResourcesChangeInfo.cs
- XmlSignatureManifest.cs
- ParameterToken.cs
- PerfProviderCollection.cs
- _IPv4Address.cs
- DataGridCommandEventArgs.cs
- PageThemeBuildProvider.cs
- ExecutedRoutedEventArgs.cs
- AppDomainCompilerProxy.cs
- UserControl.cs
- WebPartTransformerAttribute.cs
- WorkflowServiceBehavior.cs
- WebBaseEventKeyComparer.cs
- Validator.cs
- CompilerWrapper.cs
- Keyboard.cs
- UITypeEditor.cs
- LexicalChunk.cs
- ContentControl.cs
- DataBoundControlAdapter.cs
- PinnedBufferMemoryStream.cs
- ErrorLog.cs
- _IPv4Address.cs
- HttpConfigurationSystem.cs
- TableLayoutCellPaintEventArgs.cs
- ExpressionConverter.cs
- NavigatingCancelEventArgs.cs
- Part.cs
- ExtendedPropertyDescriptor.cs
- ThreadStartException.cs
- EventHandlerList.cs
- StringUtil.cs
- QueryPageSettingsEventArgs.cs
- DurableTimerExtension.cs
- MenuTracker.cs
- MenuItemBindingCollection.cs
- ListBoxItemAutomationPeer.cs
- IMembershipProvider.cs
- DesignerEventService.cs
- ObjectView.cs
- SpecialNameAttribute.cs
- MatrixStack.cs
- WebSysDescriptionAttribute.cs
- TripleDESCryptoServiceProvider.cs
- XmlCompatibilityReader.cs
- SocketPermission.cs
- ListViewGroupCollectionEditor.cs
- InvalidCastException.cs
- XmlHelper.cs
- NullableConverter.cs
- StateBag.cs
- FlowDocumentPageViewerAutomationPeer.cs
- HtmlInputButton.cs
- ImageListImage.cs
- WebControlToolBoxItem.cs
- Figure.cs
- RowSpanVector.cs
- EventDescriptor.cs
- MobileErrorInfo.cs
- CompensationExtension.cs
- FormClosedEvent.cs
- EnvelopedPkcs7.cs
- ReferenceConverter.cs
- DBCommandBuilder.cs
- EventLogPermission.cs
- WindowsSpinner.cs
- TreeNodeConverter.cs
- ThaiBuddhistCalendar.cs
- ScriptModule.cs
- Win32PrintDialog.cs
- ThicknessAnimationBase.cs
- RadioButtonRenderer.cs
- PermissionListSet.cs