Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Activation / Iis7Helper.cs / 1 / Iis7Helper.cs
//---------------------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------------------- namespace System.ServiceModel.Activation { using Microsoft.Win32; using System.Configuration; using System.Collections; using System.Security.Permissions; using System.Security; static class Iis7Helper { static int iisVersion; static bool isIis7; static Iis7Helper() { isIis7 = GetIsIis7(); } ////// Critical - uses SecurityCritical method to get version info from registry /// Safe - processes registry info into a safe bool for return /// [SecurityCritical, SecurityTreatAsSafe] static bool GetIsIis7() { iisVersion = -1; object majorVersion = UnsafeGetMajorVersionFromRegistry(); if (majorVersion != null && majorVersion.GetType().Equals(typeof(int))) { iisVersion = (int)majorVersion; } return iisVersion >= 7; } const string subKey = @"Software\Microsoft\InetSTP"; ////// Critical - asserts registry access to get a single value from the registry /// caller should not leak value /// [SecurityCritical] [RegistryPermission(SecurityAction.Assert, Read = @"HKEY_LOCAL_MACHINE\" + subKey)] static object UnsafeGetMajorVersionFromRegistry() { using (RegistryKey localMachine = Registry.LocalMachine) { using (RegistryKey versionKey = localMachine.OpenSubKey(subKey)) { return versionKey != null ? versionKey.GetValue("MajorVersion") : null; } } } internal static int IisVersion { get { return iisVersion; } } internal static bool IsIis7 { get { return isIis7; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ProtocolElement.cs
- ItemMap.cs
- CompilerGeneratedAttribute.cs
- Viewport2DVisual3D.cs
- DoubleKeyFrameCollection.cs
- FormatConvertedBitmap.cs
- XmlHierarchyData.cs
- SolidColorBrush.cs
- DesignerCommandSet.cs
- ResourceReferenceExpressionConverter.cs
- ValueQuery.cs
- DrawingGroup.cs
- SecurityContext.cs
- Menu.cs
- ActivityExecutor.cs
- SetIndexBinder.cs
- CreateUserWizardStep.cs
- EventMappingSettings.cs
- CodeExporter.cs
- CompositeTypefaceMetrics.cs
- InstanceCreationEditor.cs
- SqlDataRecord.cs
- XmlElementAttribute.cs
- SplineKeyFrames.cs
- NamespaceList.cs
- IndentTextWriter.cs
- NavigationEventArgs.cs
- AssemblyBuilder.cs
- ToolStripActionList.cs
- ForeignConstraint.cs
- MorphHelpers.cs
- PixelShader.cs
- ClrPerspective.cs
- ConnectorSelectionGlyph.cs
- Operator.cs
- ErrorStyle.cs
- RegexCharClass.cs
- JsonEncodingStreamWrapper.cs
- Compress.cs
- CodePrimitiveExpression.cs
- SecurityNegotiationException.cs
- ColorContext.cs
- IndexOutOfRangeException.cs
- Environment.cs
- DataListComponentEditor.cs
- MulticastOption.cs
- Nullable.cs
- CodeGeneratorOptions.cs
- HandleInitializationContext.cs
- RequestFactory.cs
- HttpWriter.cs
- SqlClientMetaDataCollectionNames.cs
- unsafenativemethodstextservices.cs
- RC2.cs
- SoapExtensionTypeElementCollection.cs
- GifBitmapDecoder.cs
- StandardToolWindows.cs
- ProgressBar.cs
- OverflowException.cs
- System.Data_BID.cs
- QilInvokeLateBound.cs
- LinkedResource.cs
- ReflectionTypeLoadException.cs
- ColorContext.cs
- QilLiteral.cs
- DataGridHeaderBorder.cs
- CompositeFontFamily.cs
- EditCommandColumn.cs
- BuildProvider.cs
- PeerCollaborationPermission.cs
- TeredoHelper.cs
- TcpAppDomainProtocolHandler.cs
- Certificate.cs
- BaseCodeDomTreeGenerator.cs
- SiteMapHierarchicalDataSourceView.cs
- BindingExpressionUncommonField.cs
- EditorPart.cs
- FileLogRecordHeader.cs
- DataSourceExpressionCollection.cs
- XmlDocumentSerializer.cs
- PackagePartCollection.cs
- RootBuilder.cs
- OrderablePartitioner.cs
- DataSourceViewSchemaConverter.cs
- SHA384Cng.cs
- EntityProviderServices.cs
- Durable.cs
- UriScheme.cs
- CaseInsensitiveComparer.cs
- FragmentQuery.cs
- StylusPointPropertyUnit.cs
- HttpRequestTraceRecord.cs
- HuffCodec.cs
- Encoding.cs
- PatternMatchRules.cs
- XmlWellformedWriter.cs
- MimeWriter.cs
- XmlFormatReaderGenerator.cs
- SQLMoneyStorage.cs
- OleDbRowUpdatingEvent.cs