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
- Transactions.cs
- DoubleLink.cs
- NTAccount.cs
- XmlConvert.cs
- FileClassifier.cs
- StickyNoteHelper.cs
- KeyValuePairs.cs
- NameValuePermission.cs
- ListViewUpdateEventArgs.cs
- RemotingServices.cs
- HttpCacheParams.cs
- TransactionManager.cs
- DuplicateWaitObjectException.cs
- MimeBasePart.cs
- DefaultHttpHandler.cs
- SqlConnectionFactory.cs
- DbConnectionInternal.cs
- XslAst.cs
- MailSettingsSection.cs
- RadialGradientBrush.cs
- PackagePart.cs
- VarInfo.cs
- NativeCppClassAttribute.cs
- DataSourceCollectionBase.cs
- TraceProvider.cs
- SchemaDeclBase.cs
- MouseCaptureWithinProperty.cs
- XmlCharCheckingReader.cs
- KeyValuePairs.cs
- WhitespaceReader.cs
- FunctionDefinition.cs
- CommandID.cs
- CompilationRelaxations.cs
- Activity.cs
- BrowserCapabilitiesFactoryBase.cs
- DbConnectionPool.cs
- ModelPropertyCollectionImpl.cs
- ExtendedPropertyDescriptor.cs
- ButtonBase.cs
- TypeFieldSchema.cs
- Image.cs
- ListControl.cs
- XslVisitor.cs
- DataPointer.cs
- AssemblyBuilder.cs
- CustomErrorCollection.cs
- FlowDocumentReader.cs
- UnmanagedMarshal.cs
- ServiceDescriptionReflector.cs
- Graph.cs
- SqlColumnizer.cs
- FileUtil.cs
- DataTemplateSelector.cs
- TextEffectCollection.cs
- SafeIUnknown.cs
- ActivityDesignerHighlighter.cs
- SqlCaseSimplifier.cs
- WebEventCodes.cs
- ImagingCache.cs
- FirstMatchCodeGroup.cs
- FrameworkContentElementAutomationPeer.cs
- ControlIdConverter.cs
- ConfigurationValidatorBase.cs
- BoolExpressionVisitors.cs
- PropertyChangingEventArgs.cs
- ImmComposition.cs
- SqlSupersetValidator.cs
- HitTestParameters.cs
- DeferredElementTreeState.cs
- TimelineCollection.cs
- BreakSafeBase.cs
- SafeArrayTypeMismatchException.cs
- SqlMethods.cs
- NonClientArea.cs
- TimeSpan.cs
- LayoutEngine.cs
- SecureConversationDriver.cs
- SurrogateChar.cs
- TextBox.cs
- ProvideValueServiceProvider.cs
- TypedReference.cs
- COM2Properties.cs
- DecoderFallbackWithFailureFlag.cs
- AmbientLight.cs
- DataGridViewRowCancelEventArgs.cs
- shaperfactory.cs
- EntityDesignerUtils.cs
- XmlArrayItemAttribute.cs
- CharacterString.cs
- SiteMapPath.cs
- GenericEnumerator.cs
- SelectionUIService.cs
- HttpsHostedTransportConfiguration.cs
- LoginCancelEventArgs.cs
- DataGridViewTextBoxCell.cs
- EntitySqlQueryCacheEntry.cs
- SR.cs
- ButtonFieldBase.cs
- GroupQuery.cs
- Metafile.cs