Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // 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; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ObjectNotFoundException.cs
- TripleDES.cs
- StylusButton.cs
- ProfileInfo.cs
- NoClickablePointException.cs
- GetIndexBinder.cs
- ModelTreeEnumerator.cs
- EnvelopedPkcs7.cs
- Main.cs
- RemotingSurrogateSelector.cs
- ListBindingConverter.cs
- DesigntimeLicenseContextSerializer.cs
- RoleGroupCollectionEditor.cs
- InfoCardRSAOAEPKeyExchangeFormatter.cs
- XmlEntityReference.cs
- DbParameterHelper.cs
- SerializationObjectManager.cs
- JoinQueryOperator.cs
- QualifiedCellIdBoolean.cs
- SystemIcmpV4Statistics.cs
- TabItemWrapperAutomationPeer.cs
- ItemType.cs
- DataGridCell.cs
- DataGridViewImageCell.cs
- TextLineResult.cs
- IdnElement.cs
- PathTooLongException.cs
- ComponentRenameEvent.cs
- ForceCopyBuildProvider.cs
- RuntimeCompatibilityAttribute.cs
- SiblingIterators.cs
- HostExecutionContextManager.cs
- VisualCollection.cs
- FilterException.cs
- SchemaAttDef.cs
- CompositeTypefaceMetrics.cs
- SystemDiagnosticsSection.cs
- Vector.cs
- Graphics.cs
- ReadOnlyDataSource.cs
- OptimizerPatterns.cs
- PathSegmentCollection.cs
- ArgumentValidation.cs
- HttpRuntime.cs
- ThreadInterruptedException.cs
- DataSourceControlBuilder.cs
- UIntPtr.cs
- DataGridViewLinkColumn.cs
- RequestQueue.cs
- WebPartMenu.cs
- StrongNameUtility.cs
- CaseStatement.cs
- ObjRef.cs
- DataServiceHost.cs
- ScopelessEnumAttribute.cs
- AnnotationHelper.cs
- Resources.Designer.cs
- PointAnimationUsingKeyFrames.cs
- SqlNotificationRequest.cs
- DataGridViewCellStateChangedEventArgs.cs
- BasePropertyDescriptor.cs
- DataTableNameHandler.cs
- EntityDataSourceDataSelectionPanel.designer.cs
- ModifierKeysConverter.cs
- OutputCacheModule.cs
- SQLDateTime.cs
- RegexNode.cs
- InternalControlCollection.cs
- PathFigureCollection.cs
- EnglishPluralizationService.cs
- PropertyConverter.cs
- EventLogPermission.cs
- AuthenticationSchemesHelper.cs
- RegistrySecurity.cs
- Compilation.cs
- InstanceCreationEditor.cs
- GridViewDeletedEventArgs.cs
- MemberExpression.cs
- ScaleTransform3D.cs
- UICuesEvent.cs
- NamespaceCollection.cs
- SafeRegistryKey.cs
- ExpressionNormalizer.cs
- InsufficientMemoryException.cs
- ConfigurationValue.cs
- WinEventTracker.cs
- XmlNamespaceMapping.cs
- MouseCaptureWithinProperty.cs
- CaseInsensitiveOrdinalStringComparer.cs
- SpecialFolderEnumConverter.cs
- ReflectionServiceProvider.cs
- MdiWindowListStrip.cs
- NonParentingControl.cs
- DataServiceQueryProvider.cs
- DataServiceQueryProvider.cs
- RouteParametersHelper.cs
- ListControl.cs
- LabelLiteral.cs
- BuildProviderInstallComponent.cs
- TemplateManager.cs