Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Runtime / InteropServices / RuntimeEnvironment.cs / 1 / RuntimeEnvironment.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** Class: RuntimeEnvironment ** ** ** Purpose: Runtime information ** ** =============================================================================*/ using System; using System.Text; using System.IO; using System.Runtime.CompilerServices; using System.Security.Permissions; using System.Reflection; using Microsoft.Win32; namespace System.Runtime.InteropServices { [System.Runtime.InteropServices.ComVisible(true)] public class RuntimeEnvironment { [MethodImplAttribute(MethodImplOptions.InternalCall)] internal static extern String GetModuleFileName(); [MethodImplAttribute(MethodImplOptions.InternalCall)] internal static extern String GetDeveloperPath(); [MethodImplAttribute(MethodImplOptions.InternalCall)] internal static extern String GetHostBindingFile(); [DllImport(Win32Native.SHIM, CharSet=CharSet.Unicode, CallingConvention=CallingConvention.StdCall)] private static extern int GetCORVersion(StringBuilder sb, int BufferLength, ref int retLength); [MethodImplAttribute(MethodImplOptions.InternalCall)] public static extern bool FromGlobalAccessCache(Assembly a); public static String GetSystemVersion() { StringBuilder s = new StringBuilder(256); int retLength = 0; if(GetCORVersion(s, 256, ref retLength) == 0) return s.ToString(); else return null; } public static String GetRuntimeDirectory() { String dir = GetRuntimeDirectoryImpl(); new FileIOPermission(FileIOPermissionAccess.PathDiscovery, dir).Demand(); return dir; } [MethodImplAttribute(MethodImplOptions.InternalCall)] internal static extern String GetRuntimeDirectoryImpl(); // Returns the system ConfigurationFile public static String SystemConfigurationFile { get { StringBuilder sb = new StringBuilder(Path.MAX_PATH); sb.Append(GetRuntimeDirectory()); sb.Append(AppDomainSetup.RuntimeConfigurationFile); String path = sb.ToString(); // Do security check new FileIOPermission(FileIOPermissionAccess.PathDiscovery, path).Demand(); return path; } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StyleSheet.cs
- RemotingConfigParser.cs
- StreamGeometry.cs
- ChangesetResponse.cs
- XPathNavigator.cs
- ContextMenuStrip.cs
- FixedTextContainer.cs
- ActivityFunc.cs
- BrowserInteropHelper.cs
- GlyphElement.cs
- WSSecurityPolicy.cs
- PersonalizationEntry.cs
- PartialCachingControl.cs
- StickyNoteAnnotations.cs
- SqlClientWrapperSmiStream.cs
- XmlSchemaAttributeGroup.cs
- dtdvalidator.cs
- Add.cs
- RepeaterCommandEventArgs.cs
- BitVector32.cs
- RefreshEventArgs.cs
- WindowsHyperlink.cs
- SqlConnection.cs
- NamedPipeTransportElement.cs
- DictionaryBase.cs
- XmlElementAttribute.cs
- CommandBinding.cs
- AnnotationObservableCollection.cs
- UpdateEventArgs.cs
- SwitchAttribute.cs
- DoubleLink.cs
- MaskedTextProvider.cs
- GeneralTransform.cs
- TablePatternIdentifiers.cs
- PreProcessor.cs
- ToolStripDropDownClosedEventArgs.cs
- MemberExpressionHelper.cs
- ProfileService.cs
- RandomNumberGenerator.cs
- AddInContractAttribute.cs
- input.cs
- ActiveXHelper.cs
- FileUtil.cs
- ILGenerator.cs
- XmlUnspecifiedAttribute.cs
- MtomMessageEncodingBindingElement.cs
- StandardCommandToolStripMenuItem.cs
- MessageDecoder.cs
- SystemBrushes.cs
- ProfileEventArgs.cs
- CollectionContainer.cs
- ExtensibleSyndicationObject.cs
- FilteredXmlReader.cs
- MeasurementDCInfo.cs
- _HeaderInfo.cs
- _Connection.cs
- BuilderInfo.cs
- WebPartZoneBase.cs
- PrinterResolution.cs
- PrimitiveType.cs
- OdbcConnectionFactory.cs
- AddressAlreadyInUseException.cs
- TimeSpanConverter.cs
- TakeQueryOptionExpression.cs
- StrokeNodeOperations.cs
- SymbolEqualComparer.cs
- StoreContentChangedEventArgs.cs
- LinqDataSourceStatusEventArgs.cs
- ObjectHelper.cs
- UseAttributeSetsAction.cs
- ComponentDispatcherThread.cs
- DataServiceCollectionOfT.cs
- ClientTarget.cs
- RequestResizeEvent.cs
- MultiView.cs
- ImportDesigner.xaml.cs
- Models.cs
- InternalResources.cs
- FormDesigner.cs
- FixedSOMContainer.cs
- SslStreamSecurityElement.cs
- StatusBarPanel.cs
- ToolStripItemGlyph.cs
- DetectEofStream.cs
- QuaternionAnimationBase.cs
- RowToFieldTransformer.cs
- SiteMembershipCondition.cs
- Section.cs
- Propagator.JoinPropagator.cs
- XmlAttributeCollection.cs
- FileLevelControlBuilderAttribute.cs
- RenameRuleObjectDialog.Designer.cs
- CodeVariableReferenceExpression.cs
- BatchWriter.cs
- HttpListenerRequestUriBuilder.cs
- PageRanges.cs
- SystemIPInterfaceProperties.cs
- XmlNamespaceDeclarationsAttribute.cs
- _NestedSingleAsyncResult.cs
- Accessors.cs