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
- DataGridViewCellMouseEventArgs.cs
- OracleBFile.cs
- EntityTypeEmitter.cs
- WorkflowClientDeliverMessageWrapper.cs
- MethodBuilder.cs
- HasCopySemanticsAttribute.cs
- XmlHierarchyData.cs
- SystemFonts.cs
- SourceElementsCollection.cs
- HttpServerProtocol.cs
- EventQueueState.cs
- Crypto.cs
- WebInvokeAttribute.cs
- HwndSourceParameters.cs
- TabletDeviceInfo.cs
- MissingManifestResourceException.cs
- SettingsPropertyValue.cs
- LookupNode.cs
- WebPartDisplayMode.cs
- Item.cs
- ActiveXContainer.cs
- RadioButtonPopupAdapter.cs
- filewebrequest.cs
- LinkGrep.cs
- CompilerErrorCollection.cs
- TemplateBamlTreeBuilder.cs
- Int32CollectionValueSerializer.cs
- IImplicitResourceProvider.cs
- OracleException.cs
- MsmqInputMessage.cs
- TextReader.cs
- NetworkInformationException.cs
- TextRangeBase.cs
- Oid.cs
- PrintPreviewGraphics.cs
- System.Data_BID.cs
- RichTextBox.cs
- SeparatorAutomationPeer.cs
- Base64Stream.cs
- WizardStepBase.cs
- MarshalDirectiveException.cs
- TextEditorCopyPaste.cs
- Parameter.cs
- IISMapPath.cs
- TextWriter.cs
- SelectionService.cs
- HttpFileCollection.cs
- DeviceSpecificChoiceCollection.cs
- Authorization.cs
- SHA256Managed.cs
- DataGridViewComboBoxEditingControl.cs
- FixedFindEngine.cs
- DataServiceRequestArgs.cs
- DropShadowBitmapEffect.cs
- WebPartVerb.cs
- CriticalFinalizerObject.cs
- WebPartDescription.cs
- FindCriteria11.cs
- GridErrorDlg.cs
- ExpressionBinding.cs
- Selector.cs
- smtppermission.cs
- ClientTargetCollection.cs
- RuntimeCompatibilityAttribute.cs
- HtmlUtf8RawTextWriter.cs
- ErrorStyle.cs
- ResourceCategoryAttribute.cs
- ComplexLine.cs
- HashAlgorithm.cs
- CodeGotoStatement.cs
- DataBoundControlHelper.cs
- StylusSystemGestureEventArgs.cs
- DataGridItemCollection.cs
- Debug.cs
- MasterPageParser.cs
- ControlAdapter.cs
- SecurityContext.cs
- SvcMapFile.cs
- MutexSecurity.cs
- TemplatedMailWebEventProvider.cs
- ManagementInstaller.cs
- SchemaTypeEmitter.cs
- Rotation3DKeyFrameCollection.cs
- XmlQueryOutput.cs
- ProcessMessagesAsyncResult.cs
- ChannelCredentials.cs
- ProfileEventArgs.cs
- AvTrace.cs
- __ConsoleStream.cs
- MenuBase.cs
- OLEDB_Util.cs
- ReadOnlyTernaryTree.cs
- FlagsAttribute.cs
- TreeViewImageKeyConverter.cs
- VSDExceptions.cs
- WebServiceTypeData.cs
- Site.cs
- BinaryParser.cs
- SystemIPAddressInformation.cs
- StylusPointProperties.cs