Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / CompMod / System / CodeDOM / Compiler / CompilerResults.cs / 1 / CompilerResults.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.CodeDom.Compiler { using System; using System.CodeDom; using System.Reflection; using System.Collections; using System.Collections.Specialized; using System.Security; using System.Security.Permissions; using System.Security.Policy; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Binary; using System.IO; ////// [Serializable()] [PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")] public class CompilerResults { private CompilerErrorCollection errors = new CompilerErrorCollection(); private StringCollection output = new StringCollection(); private Assembly compiledAssembly; private string pathToAssembly; private int nativeCompilerReturnValue; private TempFileCollection tempFiles; private Evidence evidence; ////// Represents the results /// of compilation from the compiler. /// ////// [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] public CompilerResults(TempFileCollection tempFiles) { this.tempFiles = tempFiles; } ////// Initializes a new instance of ////// that uses the specified /// temporary files. /// /// public TempFileCollection TempFiles { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { return tempFiles; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { tempFiles = value; } } ////// Gets or sets the temporary files to use. /// ////// public Evidence Evidence { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { Evidence e = null; if (evidence != null) e = CloneEvidence(evidence); return e; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] [SecurityPermissionAttribute( SecurityAction.Demand, ControlEvidence = true )] set { if (value != null) evidence = CloneEvidence(value); else evidence = null; } } ////// Set the evidence for partially trusted scenarios. /// ////// public Assembly CompiledAssembly { [SecurityPermissionAttribute(SecurityAction.Assert, Flags=SecurityPermissionFlag.ControlEvidence)] get { if (compiledAssembly == null && pathToAssembly != null) { AssemblyName assemName = new AssemblyName(); assemName.CodeBase = pathToAssembly; compiledAssembly = Assembly.Load(assemName,evidence); } return compiledAssembly; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { compiledAssembly = value; } } ////// The compiled assembly. /// ////// public CompilerErrorCollection Errors { get { return errors; } } ////// Gets or sets the collection of compiler errors. /// ////// public StringCollection Output { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { return output; } } ////// Gets or sets the compiler output messages. /// ////// public string PathToAssembly { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { return pathToAssembly; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { pathToAssembly = value; } } ////// Gets or sets the path to the assembly. /// ////// public int NativeCompilerReturnValue { get { return nativeCompilerReturnValue; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { nativeCompilerReturnValue = value; } } internal static Evidence CloneEvidence(Evidence ev) { new PermissionSet( PermissionState.Unrestricted ).Assert(); MemoryStream stream = new MemoryStream(); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize( stream, ev ); stream.Position = 0; return (Evidence)formatter.Deserialize( stream ); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Gets or sets the compiler's return value. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.CodeDom.Compiler { using System; using System.CodeDom; using System.Reflection; using System.Collections; using System.Collections.Specialized; using System.Security; using System.Security.Permissions; using System.Security.Policy; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Binary; using System.IO; ////// [Serializable()] [PermissionSet(SecurityAction.InheritanceDemand, Name="FullTrust")] public class CompilerResults { private CompilerErrorCollection errors = new CompilerErrorCollection(); private StringCollection output = new StringCollection(); private Assembly compiledAssembly; private string pathToAssembly; private int nativeCompilerReturnValue; private TempFileCollection tempFiles; private Evidence evidence; ////// Represents the results /// of compilation from the compiler. /// ////// [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] public CompilerResults(TempFileCollection tempFiles) { this.tempFiles = tempFiles; } ////// Initializes a new instance of ////// that uses the specified /// temporary files. /// /// public TempFileCollection TempFiles { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { return tempFiles; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { tempFiles = value; } } ////// Gets or sets the temporary files to use. /// ////// public Evidence Evidence { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { Evidence e = null; if (evidence != null) e = CloneEvidence(evidence); return e; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] [SecurityPermissionAttribute( SecurityAction.Demand, ControlEvidence = true )] set { if (value != null) evidence = CloneEvidence(value); else evidence = null; } } ////// Set the evidence for partially trusted scenarios. /// ////// public Assembly CompiledAssembly { [SecurityPermissionAttribute(SecurityAction.Assert, Flags=SecurityPermissionFlag.ControlEvidence)] get { if (compiledAssembly == null && pathToAssembly != null) { AssemblyName assemName = new AssemblyName(); assemName.CodeBase = pathToAssembly; compiledAssembly = Assembly.Load(assemName,evidence); } return compiledAssembly; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { compiledAssembly = value; } } ////// The compiled assembly. /// ////// public CompilerErrorCollection Errors { get { return errors; } } ////// Gets or sets the collection of compiler errors. /// ////// public StringCollection Output { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { return output; } } ////// Gets or sets the compiler output messages. /// ////// public string PathToAssembly { [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] get { return pathToAssembly; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { pathToAssembly = value; } } ////// Gets or sets the path to the assembly. /// ////// public int NativeCompilerReturnValue { get { return nativeCompilerReturnValue; } [PermissionSet(SecurityAction.LinkDemand, Name="FullTrust")] set { nativeCompilerReturnValue = value; } } internal static Evidence CloneEvidence(Evidence ev) { new PermissionSet( PermissionState.Unrestricted ).Assert(); MemoryStream stream = new MemoryStream(); BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize( stream, ev ); stream.Position = 0; return (Evidence)formatter.Deserialize( stream ); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Gets or sets the compiler's return value. /// ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SourceLocation.cs
- IdentityManager.cs
- Message.cs
- SystemKeyConverter.cs
- CodeNamespaceImport.cs
- FileAuthorizationModule.cs
- WebSysDefaultValueAttribute.cs
- SecurityException.cs
- ServiceHost.cs
- InternalMappingException.cs
- LinqDataSourceHelper.cs
- latinshape.cs
- InternalRelationshipCollection.cs
- MatrixIndependentAnimationStorage.cs
- TypeSystemProvider.cs
- VirtualDirectoryMappingCollection.cs
- StringPropertyBuilder.cs
- SelectionPattern.cs
- dataSvcMapFileLoader.cs
- SoundPlayerAction.cs
- DSASignatureDeformatter.cs
- CompiledELinqQueryState.cs
- CodeIndexerExpression.cs
- GiveFeedbackEventArgs.cs
- WebRequest.cs
- ZipIOCentralDirectoryFileHeader.cs
- ScrollEvent.cs
- DataRowExtensions.cs
- TextServicesLoader.cs
- WinFormsSecurity.cs
- _NetRes.cs
- EdmRelationshipNavigationPropertyAttribute.cs
- SecUtil.cs
- ControlValuePropertyAttribute.cs
- RuleConditionDialog.Designer.cs
- NetDataContractSerializer.cs
- InternalConfigEventArgs.cs
- SemanticKeyElement.cs
- EditingCommands.cs
- ManagedIStream.cs
- OleDbPropertySetGuid.cs
- EntityDataSourceWrapperPropertyDescriptor.cs
- webeventbuffer.cs
- AutomationPattern.cs
- PerfCounterSection.cs
- MulticastOption.cs
- EdmFunction.cs
- FilterElement.cs
- AsyncWaitHandle.cs
- StyleSelector.cs
- ObjectNavigationPropertyMapping.cs
- XmlSignatureProperties.cs
- QilGenerator.cs
- SqlDataSourceStatusEventArgs.cs
- SecureUICommand.cs
- ValidationSummary.cs
- ReferenceAssemblyAttribute.cs
- NotImplementedException.cs
- HMACSHA256.cs
- ConcurrentStack.cs
- Peer.cs
- WorkerRequest.cs
- TypeDependencyAttribute.cs
- ProcessModule.cs
- MimeFormImporter.cs
- StateMachineDesignerPaint.cs
- NamespaceInfo.cs
- GridErrorDlg.cs
- HMAC.cs
- ObjectListTitleAttribute.cs
- CodeTypeParameter.cs
- PropertyConverter.cs
- CustomErrorCollection.cs
- RadioButton.cs
- LockRecoveryTask.cs
- SmtpTransport.cs
- CodeDefaultValueExpression.cs
- RawUIStateInputReport.cs
- ConfigurationLocation.cs
- MemberAccessException.cs
- FrameworkContentElement.cs
- XMLUtil.cs
- ParameterToken.cs
- PropertyTabChangedEvent.cs
- ScrollPattern.cs
- LeafCellTreeNode.cs
- _BaseOverlappedAsyncResult.cs
- PerformanceCounterManager.cs
- SlotInfo.cs
- ConfigXmlElement.cs
- BaseResourcesBuildProvider.cs
- SvcMapFile.cs
- RuntimeWrappedException.cs
- DbgCompiler.cs
- XmlSiteMapProvider.cs
- CodeObjectCreateExpression.cs
- SvcMapFileLoader.cs
- ManagedWndProcTracker.cs
- MemberDomainMap.cs
- DefaultTextStore.cs