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
- SHA1Managed.cs
- DeviceContexts.cs
- GatewayIPAddressInformationCollection.cs
- DesignerAdapterAttribute.cs
- WebFaultClientMessageInspector.cs
- DbModificationClause.cs
- ActivityPreviewDesigner.cs
- BamlRecordReader.cs
- AdditionalEntityFunctions.cs
- ExpressionVisitor.cs
- MarginsConverter.cs
- GraphicsPath.cs
- Debug.cs
- RolePrincipal.cs
- DateTimeFormatInfoScanner.cs
- MemoryFailPoint.cs
- NameSpaceEvent.cs
- TableCellAutomationPeer.cs
- AddingNewEventArgs.cs
- Translator.cs
- ThemeableAttribute.cs
- String.cs
- TextDecorationLocationValidation.cs
- VSDExceptions.cs
- _BasicClient.cs
- TransformBlockRequest.cs
- _ListenerResponseStream.cs
- SmtpMail.cs
- ChannelDispatcher.cs
- DataRelationCollection.cs
- XamlSerializerUtil.cs
- ObjectManager.cs
- xmlglyphRunInfo.cs
- SupportsEventValidationAttribute.cs
- Wizard.cs
- StorageEntitySetMapping.cs
- SafeViewOfFileHandle.cs
- FilterQuery.cs
- IItemContainerGenerator.cs
- DataKey.cs
- HMACMD5.cs
- RemotingServices.cs
- TreeNodeBinding.cs
- GestureRecognitionResult.cs
- WasEndpointConfigContainer.cs
- ConstrainedGroup.cs
- Win32NamedPipes.cs
- UpdateCompiler.cs
- CompositeCollection.cs
- Wildcard.cs
- MetadataImporterQuotas.cs
- StickyNoteAnnotations.cs
- TypeUnloadedException.cs
- ItemList.cs
- ZoomPercentageConverter.cs
- PropertyGeneratedEventArgs.cs
- Root.cs
- DiagnosticSection.cs
- ForceCopyBuildProvider.cs
- BamlCollectionHolder.cs
- MimeTypeAttribute.cs
- AbstractSvcMapFileLoader.cs
- AnimationTimeline.cs
- RangeValidator.cs
- Baml2006Reader.cs
- InputLanguage.cs
- TimeZone.cs
- ToolStripMenuItem.cs
- AccessDataSourceView.cs
- GeometryHitTestResult.cs
- Policy.cs
- _HeaderInfoTable.cs
- ConsumerConnectionPointCollection.cs
- RichTextBox.cs
- SessionStateModule.cs
- ModuleBuilder.cs
- UndoEngine.cs
- IntSecurity.cs
- PersonalizationStateInfo.cs
- ListBoxItemWrapperAutomationPeer.cs
- UIPermission.cs
- QilInvokeEarlyBound.cs
- CapabilitiesRule.cs
- DuplexChannelBinder.cs
- TargetControlTypeAttribute.cs
- PrintSchema.cs
- WebBrowserNavigatingEventHandler.cs
- Trace.cs
- SerializerDescriptor.cs
- CommandBindingCollection.cs
- EntityContainerAssociationSetEnd.cs
- ExtensionDataReader.cs
- NativeMethods.cs
- PathFigureCollection.cs
- Interop.cs
- ToolStripGrip.cs
- FixedHighlight.cs
- WindowsSolidBrush.cs
- DataKey.cs
- MainMenu.cs