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
- RequestDescription.cs
- PermissionRequestEvidence.cs
- BrowsableAttribute.cs
- MenuCommand.cs
- metrodevice.cs
- Point4D.cs
- PkcsMisc.cs
- UnsignedPublishLicense.cs
- DataServiceRequest.cs
- XPathSingletonIterator.cs
- WebResourceAttribute.cs
- TypefaceMap.cs
- SingleResultAttribute.cs
- BindingMemberInfo.cs
- SingleAnimationBase.cs
- MemoryFailPoint.cs
- RenamedEventArgs.cs
- Thread.cs
- Geometry3D.cs
- RuntimeHandles.cs
- Visual3D.cs
- CatalogZone.cs
- OdbcCommandBuilder.cs
- SqlClientWrapperSmiStreamChars.cs
- TraceFilter.cs
- FixedSOMPageConstructor.cs
- SingleKeyFrameCollection.cs
- HttpHandlerActionCollection.cs
- PtsHelper.cs
- AuthStoreRoleProvider.cs
- filewebrequest.cs
- XmlEntityReference.cs
- TypeForwardedToAttribute.cs
- ExpandoClass.cs
- QualifiedId.cs
- SoapAttributes.cs
- FileDataSourceCache.cs
- CriticalExceptions.cs
- Vector3D.cs
- PageEventArgs.cs
- ByteStorage.cs
- ObjectListFieldCollection.cs
- baseaxisquery.cs
- ElementsClipboardData.cs
- TextPatternIdentifiers.cs
- SafeHandles.cs
- ConfigurationPropertyAttribute.cs
- RecordManager.cs
- AttachedPropertyMethodSelector.cs
- UIPermission.cs
- EventData.cs
- TextEditorSelection.cs
- PtsHelper.cs
- DesignerActionHeaderItem.cs
- UpDownBase.cs
- ListViewInsertionMark.cs
- UserControlCodeDomTreeGenerator.cs
- PerformanceCounterPermissionEntryCollection.cs
- ITextView.cs
- ControlPaint.cs
- UIAgentMonitor.cs
- NullReferenceException.cs
- BamlLocalizer.cs
- CustomExpression.cs
- ChannelSinkStacks.cs
- PolicyImporterElement.cs
- DnsPermission.cs
- XmlIgnoreAttribute.cs
- AppDomainManager.cs
- UrlPropertyAttribute.cs
- reliableinputsessionchannel.cs
- GridItemPatternIdentifiers.cs
- BinHexEncoder.cs
- InitializerFacet.cs
- XmlSerializerSection.cs
- ScrollContentPresenter.cs
- IInstanceContextProvider.cs
- CardSpaceException.cs
- KeyboardEventArgs.cs
- CompleteWizardStep.cs
- X509Certificate2Collection.cs
- Control.cs
- Span.cs
- _NetRes.cs
- XmlArrayItemAttribute.cs
- RayMeshGeometry3DHitTestResult.cs
- DataGridTextColumn.cs
- TransformerTypeCollection.cs
- OpenTypeMethods.cs
- SelectQueryOperator.cs
- DataControlFieldCollection.cs
- _OverlappedAsyncResult.cs
- CacheVirtualItemsEvent.cs
- TrackBarDesigner.cs
- RoutedPropertyChangedEventArgs.cs
- CacheDependency.cs
- Membership.cs
- ParseChildrenAsPropertiesAttribute.cs
- EdmProperty.cs
- Matrix3D.cs