Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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]; } } } } }/// 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
- Part.cs
- MultipartIdentifier.cs
- SemanticResultKey.cs
- Deserializer.cs
- ConfigsHelper.cs
- TreeNodeEventArgs.cs
- OrderedHashRepartitionStream.cs
- ExpressionsCollectionConverter.cs
- EventLogEntryCollection.cs
- UriTemplateClientFormatter.cs
- ObsoleteAttribute.cs
- IdlingCommunicationPool.cs
- ActivityTypeDesigner.xaml.cs
- RegexWorker.cs
- keycontainerpermission.cs
- SectionRecord.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- XmlTextReader.cs
- MultipartIdentifier.cs
- EventLogEntryCollection.cs
- Attribute.cs
- BamlLocalizationDictionary.cs
- HandlerFactoryWrapper.cs
- FilePresentation.cs
- SamlAssertion.cs
- HostingEnvironmentSection.cs
- XmlHierarchyData.cs
- InheritanceContextHelper.cs
- WpfKnownMember.cs
- CannotUnloadAppDomainException.cs
- CommandConverter.cs
- DataGridRelationshipRow.cs
- CompModSwitches.cs
- DocumentViewerBase.cs
- MD5CryptoServiceProvider.cs
- NotCondition.cs
- WeakHashtable.cs
- input.cs
- RtType.cs
- Transactions.cs
- AuthenticationService.cs
- SizeChangedEventArgs.cs
- Journaling.cs
- TextFindEngine.cs
- Behavior.cs
- InfoCardCryptoHelper.cs
- RtfToXamlReader.cs
- Message.cs
- ConsumerConnectionPoint.cs
- ChannelManager.cs
- Separator.cs
- ParentQuery.cs
- SafeTimerHandle.cs
- TemplateControlParser.cs
- DiagnosticTrace.cs
- CompilerScope.Storage.cs
- Switch.cs
- InputLanguageCollection.cs
- PropertyGridView.cs
- Pair.cs
- uribuilder.cs
- DataGridCellEditEndingEventArgs.cs
- Int32Storage.cs
- MatrixTransform3D.cs
- HuffCodec.cs
- WriteTimeStream.cs
- _NativeSSPI.cs
- RuntimeResourceSet.cs
- DataGrid.cs
- CurrentTimeZone.cs
- SimpleHandlerFactory.cs
- CacheOutputQuery.cs
- Viewport2DVisual3D.cs
- SapiGrammar.cs
- HtmlAnchor.cs
- ArrangedElementCollection.cs
- OneWayChannelFactory.cs
- ToolStripDropDownMenu.cs
- smtpconnection.cs
- DictionaryEditChange.cs
- RegularExpressionValidator.cs
- DecoderReplacementFallback.cs
- TextureBrush.cs
- MatrixAnimationBase.cs
- HideDisabledControlAdapter.cs
- BufferedGraphicsManager.cs
- PriorityRange.cs
- FixedStringLookup.cs
- DataGridViewRowPrePaintEventArgs.cs
- SerializationStore.cs
- Command.cs
- CompareValidator.cs
- SafeHandles.cs
- BlockCollection.cs
- HtmlInputPassword.cs
- TagPrefixCollection.cs
- PaintEvent.cs
- DefaultClaimSet.cs
- FontWeights.cs
- HttpServerUtilityBase.cs