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
- FunctionMappingTranslator.cs
- MemberExpressionHelper.cs
- FigureHelper.cs
- FormClosingEvent.cs
- EntityContainer.cs
- PowerStatus.cs
- CurrentTimeZone.cs
- RectAnimationClockResource.cs
- Visual3D.cs
- Image.cs
- MetaColumn.cs
- FontFamilyConverter.cs
- LinearKeyFrames.cs
- ValueExpressions.cs
- AttachedPropertyMethodSelector.cs
- MergeFilterQuery.cs
- SettingsPropertyNotFoundException.cs
- BitmapEffectGroup.cs
- TextBoxAutomationPeer.cs
- GZipDecoder.cs
- TemplateXamlTreeBuilder.cs
- TextEditorDragDrop.cs
- CodeGen.cs
- TranslateTransform.cs
- EntityContainerEntitySet.cs
- TextServicesProperty.cs
- ImageSourceValueSerializer.cs
- SafeTimerHandle.cs
- Environment.cs
- WindowsFormsSynchronizationContext.cs
- PolyBezierSegmentFigureLogic.cs
- FormViewInsertEventArgs.cs
- shaperfactoryquerycacheentry.cs
- QilScopedVisitor.cs
- EtwTrace.cs
- IISUnsafeMethods.cs
- AttachedPropertyMethodSelector.cs
- BulletedList.cs
- HttpHandler.cs
- EntitySetRetriever.cs
- securitycriticaldataClass.cs
- XmlSiteMapProvider.cs
- WebResponse.cs
- PersistenceTypeAttribute.cs
- InputLangChangeRequestEvent.cs
- ImageKeyConverter.cs
- WebPartMenuStyle.cs
- ItemChangedEventArgs.cs
- OpCellTreeNode.cs
- UriParserTemplates.cs
- ParseChildrenAsPropertiesAttribute.cs
- ProfileModule.cs
- Table.cs
- ContentPropertyAttribute.cs
- SizeConverter.cs
- StructureChangedEventArgs.cs
- MobileListItemCollection.cs
- SqlNode.cs
- ImageConverter.cs
- OdbcConnectionPoolProviderInfo.cs
- MessageSmuggler.cs
- ToggleButtonAutomationPeer.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- ListViewItemEventArgs.cs
- DebugInfoExpression.cs
- DBNull.cs
- ContentTextAutomationPeer.cs
- NotifyCollectionChangedEventArgs.cs
- XmlSerializerNamespaces.cs
- FontTypeConverter.cs
- DataServiceQueryProvider.cs
- DecimalStorage.cs
- LinkArea.cs
- HtmlCalendarAdapter.cs
- DesignerCommandSet.cs
- OleDbTransaction.cs
- LineServices.cs
- WindowsBrush.cs
- EdmValidator.cs
- ListCollectionView.cs
- ClaimTypes.cs
- BamlBinaryReader.cs
- XPathSingletonIterator.cs
- InternalRelationshipCollection.cs
- PeerNearMe.cs
- PassportAuthentication.cs
- IndexExpression.cs
- Compiler.cs
- TranslateTransform3D.cs
- HandlerMappingMemo.cs
- ClaimComparer.cs
- SchemaElementLookUpTable.cs
- OletxResourceManager.cs
- SQLInt64.cs
- MissingFieldException.cs
- TypeReference.cs
- VirtualizingPanel.cs
- TransformedBitmap.cs
- Query.cs
- Point3D.cs