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 / 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
- IndentedTextWriter.cs
- GridEntryCollection.cs
- SemanticValue.cs
- CodeDomSerializationProvider.cs
- OleDbError.cs
- Font.cs
- OutOfMemoryException.cs
- ReadOnlyCollectionBase.cs
- SoapReflector.cs
- XmlSignificantWhitespace.cs
- OleDbException.cs
- HMACSHA384.cs
- BitmapDownload.cs
- BulletedListEventArgs.cs
- FragmentQuery.cs
- SafeBitVector32.cs
- DataGridViewRowCollection.cs
- XamlSerializerUtil.cs
- StrokeRenderer.cs
- XmlSignatureProperties.cs
- CapabilitiesAssignment.cs
- MonthCalendar.cs
- MdbDataFileEditor.cs
- ConversionHelper.cs
- DigestComparer.cs
- DateTimePicker.cs
- DataGridViewTextBoxCell.cs
- SqlDataSourceRefreshSchemaForm.cs
- ContactManager.cs
- RightsManagementPermission.cs
- PrimitiveOperationFormatter.cs
- _TransmitFileOverlappedAsyncResult.cs
- WebPartHelpVerb.cs
- NegotiationTokenAuthenticatorStateCache.cs
- ProviderConnectionPoint.cs
- TraceUtils.cs
- GenericFlowSwitchHelper.cs
- OpenFileDialog.cs
- ErrorStyle.cs
- DirectionalLight.cs
- ThreadAbortException.cs
- ToolstripProfessionalRenderer.cs
- XmlSchemaElement.cs
- InfoCardRSAPKCS1KeyExchangeDeformatter.cs
- SecurityKeyType.cs
- ManagedWndProcTracker.cs
- PinnedBufferMemoryStream.cs
- DoubleAnimationBase.cs
- Choices.cs
- HiddenFieldDesigner.cs
- Conditional.cs
- TextMetrics.cs
- AnnotationResourceCollection.cs
- JapaneseLunisolarCalendar.cs
- JavaScriptObjectDeserializer.cs
- WindowsTab.cs
- DelegateSerializationHolder.cs
- ExpressionBindings.cs
- MediaScriptCommandRoutedEventArgs.cs
- GridViewActionList.cs
- RawAppCommandInputReport.cs
- LayoutTable.cs
- Utility.cs
- odbcmetadatafactory.cs
- updateconfighost.cs
- TimeoutValidationAttribute.cs
- UpDownBase.cs
- PreApplicationStartMethodAttribute.cs
- InitializeCorrelation.cs
- CacheDependency.cs
- GPPOINT.cs
- UnsafeNativeMethods.cs
- BamlWriter.cs
- ConstrainedDataObject.cs
- GenericPrincipal.cs
- AdvancedBindingPropertyDescriptor.cs
- DesignerActionItem.cs
- SQLBinary.cs
- DbConnectionPoolIdentity.cs
- TextEditorCharacters.cs
- LogManagementAsyncResult.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- linebase.cs
- HostedHttpTransportManager.cs
- MessageQueueTransaction.cs
- RangeBase.cs
- LightweightCodeGenerator.cs
- PolicyManager.cs
- XmlQuerySequence.cs
- LazyInitializer.cs
- RegisteredHiddenField.cs
- MaskInputRejectedEventArgs.cs
- SymLanguageType.cs
- ClipboardData.cs
- SurrogateDataContract.cs
- CipherData.cs
- WindowHideOrCloseTracker.cs
- VisualBrush.cs
- PropertyMetadata.cs
- ContractTypeNameCollection.cs