Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / WinForms / Managed / System / WinForms / FeatureSupport.cs / 1 / FeatureSupport.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Configuration.Assemblies; using System.Diagnostics; using System; using System.Reflection; using System.Security; using System.Security.Permissions; ////// /// public abstract class FeatureSupport : IFeatureSupport { ///Provides ///methods for retrieving feature information from the /// current system. /// /// public static bool IsPresent(string featureClassName, string featureConstName) { return IsPresent(featureClassName, featureConstName, new Version(0, 0, 0, 0)); } ///Determines whether any version of the specified feature /// is installed in the system. This method is ///. /// /// public static bool IsPresent(string featureClassName, string featureConstName, Version minimumVersion) { object featureId = null; IFeatureSupport featureSupport = null; //APPCOMPAT: If Type.GetType() throws, we want to return //null to preserve Everett behavior. Type c = null; try { c = Type.GetType(featureClassName); } catch (ArgumentException) {} if (c != null) { FieldInfo fi = c.GetField(featureConstName); if (fi != null) { featureId = fi.GetValue(null); } } if (featureId != null && typeof(IFeatureSupport).IsAssignableFrom(c)) { featureSupport = (IFeatureSupport) SecurityUtils.SecureCreateInstance(c); if (featureSupport != null) { return featureSupport.IsPresent(featureId, minimumVersion); } } return false; } ///Determines whether the specified or newer version of the specified feature is /// installed in the system. This method is ///. /// /// public static Version GetVersionPresent(string featureClassName, string featureConstName) { object featureId = null; IFeatureSupport featureSupport = null; //APPCOMPAT: If Type.GetType() throws, we want to return //null to preserve Everett behavior. Type c = null; try { c = Type.GetType(featureClassName); } catch (ArgumentException) {} if (c != null) { FieldInfo fi = c.GetField(featureConstName); if (fi != null) { featureId = fi.GetValue(null); } } if (featureId != null) { featureSupport = (IFeatureSupport) SecurityUtils.SecureCreateInstance(c); if (featureSupport != null) { return featureSupport.GetVersionPresent(featureId); } } return null; } ///Gets the version of the specified feature that is available on the system. ////// /// public virtual bool IsPresent(object feature) { return IsPresent(feature, new Version(0, 0, 0, 0)); } ///Determines whether any version of the specified feature /// is installed in the system. ////// /// public virtual bool IsPresent(object feature, Version minimumVersion) { Version ver = GetVersionPresent(feature); if (ver != null) { return ver.CompareTo(minimumVersion) >= 0; } return false; } ///Determines whether the specified or newer version of the /// specified feature is installed in the system. ////// /// public abstract Version GetVersionPresent(object feature); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //When overridden in a derived class, gets the version of the specified /// feature that is available on the system. ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System.Configuration.Assemblies; using System.Diagnostics; using System; using System.Reflection; using System.Security; using System.Security.Permissions; ////// /// public abstract class FeatureSupport : IFeatureSupport { ///Provides ///methods for retrieving feature information from the /// current system. /// /// public static bool IsPresent(string featureClassName, string featureConstName) { return IsPresent(featureClassName, featureConstName, new Version(0, 0, 0, 0)); } ///Determines whether any version of the specified feature /// is installed in the system. This method is ///. /// /// public static bool IsPresent(string featureClassName, string featureConstName, Version minimumVersion) { object featureId = null; IFeatureSupport featureSupport = null; //APPCOMPAT: If Type.GetType() throws, we want to return //null to preserve Everett behavior. Type c = null; try { c = Type.GetType(featureClassName); } catch (ArgumentException) {} if (c != null) { FieldInfo fi = c.GetField(featureConstName); if (fi != null) { featureId = fi.GetValue(null); } } if (featureId != null && typeof(IFeatureSupport).IsAssignableFrom(c)) { featureSupport = (IFeatureSupport) SecurityUtils.SecureCreateInstance(c); if (featureSupport != null) { return featureSupport.IsPresent(featureId, minimumVersion); } } return false; } ///Determines whether the specified or newer version of the specified feature is /// installed in the system. This method is ///. /// /// public static Version GetVersionPresent(string featureClassName, string featureConstName) { object featureId = null; IFeatureSupport featureSupport = null; //APPCOMPAT: If Type.GetType() throws, we want to return //null to preserve Everett behavior. Type c = null; try { c = Type.GetType(featureClassName); } catch (ArgumentException) {} if (c != null) { FieldInfo fi = c.GetField(featureConstName); if (fi != null) { featureId = fi.GetValue(null); } } if (featureId != null) { featureSupport = (IFeatureSupport) SecurityUtils.SecureCreateInstance(c); if (featureSupport != null) { return featureSupport.GetVersionPresent(featureId); } } return null; } ///Gets the version of the specified feature that is available on the system. ////// /// public virtual bool IsPresent(object feature) { return IsPresent(feature, new Version(0, 0, 0, 0)); } ///Determines whether any version of the specified feature /// is installed in the system. ////// /// public virtual bool IsPresent(object feature, Version minimumVersion) { Version ver = GetVersionPresent(feature); if (ver != null) { return ver.CompareTo(minimumVersion) >= 0; } return false; } ///Determines whether the specified or newer version of the /// specified feature is installed in the system. ////// /// public abstract Version GetVersionPresent(object feature); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.When overridden in a derived class, gets the version of the specified /// feature that is available on the system. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CodeDirectoryCompiler.cs
- SectionVisual.cs
- EmptyControlCollection.cs
- Properties.cs
- DrawingVisualDrawingContext.cs
- EventSinkHelperWriter.cs
- CommandSet.cs
- ResolveMatchesApril2005.cs
- LocationSectionRecord.cs
- Formatter.cs
- RoutedEventConverter.cs
- HtmlShim.cs
- DataGridCaption.cs
- DataServiceQueryProvider.cs
- HtmlLink.cs
- VirtualizedItemProviderWrapper.cs
- DataGridViewTopRowAccessibleObject.cs
- ResourceDescriptionAttribute.cs
- HorizontalAlignConverter.cs
- VectorAnimation.cs
- CreateUserErrorEventArgs.cs
- BoolExpressionVisitors.cs
- ConfigViewGenerator.cs
- Line.cs
- PersistChildrenAttribute.cs
- RuntimeEnvironment.cs
- XmlDocumentType.cs
- EntityConnectionStringBuilder.cs
- BuildProviderUtils.cs
- MouseGestureValueSerializer.cs
- DesignBindingValueUIHandler.cs
- NamespaceCollection.cs
- ControlBuilderAttribute.cs
- XPathNodeList.cs
- PackWebRequestFactory.cs
- DataGridViewElement.cs
- RestHandler.cs
- Manipulation.cs
- WorkflowRuntimeSection.cs
- XslUrlEditor.cs
- Pair.cs
- _Win32.cs
- Binding.cs
- PageStatePersister.cs
- PerspectiveCamera.cs
- RectAnimationClockResource.cs
- TrackingWorkflowEventArgs.cs
- HttpFileCollection.cs
- ComponentChangingEvent.cs
- UserControlCodeDomTreeGenerator.cs
- EventWaitHandleSecurity.cs
- ButtonChrome.cs
- QilIterator.cs
- HttpPostServerProtocol.cs
- DataGridViewCellMouseEventArgs.cs
- TileBrush.cs
- PersistencePipeline.cs
- CodeAttributeArgumentCollection.cs
- SmiEventSink.cs
- ColorBuilder.cs
- EdgeProfileValidation.cs
- DataGridViewDesigner.cs
- MessageQueueCriteria.cs
- CompensatableTransactionScopeActivityDesigner.cs
- SerializationAttributes.cs
- XomlCompilerError.cs
- DesignerObjectListAdapter.cs
- XmlFormatExtensionPointAttribute.cs
- StylusPointPropertyUnit.cs
- EventlogProvider.cs
- WebPartConnectionsConnectVerb.cs
- FloatAverageAggregationOperator.cs
- CounterCreationData.cs
- MasterPageCodeDomTreeGenerator.cs
- SynchronousSendBindingElement.cs
- WindowsSidIdentity.cs
- DurableServiceAttribute.cs
- PopupEventArgs.cs
- ConfigurationHelpers.cs
- SqlException.cs
- ShaperBuffers.cs
- LinqDataSourceDisposeEventArgs.cs
- EdgeProfileValidation.cs
- AssemblyBuilderData.cs
- UnitControl.cs
- XPathMultyIterator.cs
- Visual3D.cs
- TextDecorationUnitValidation.cs
- TemplateControlCodeDomTreeGenerator.cs
- OperationCanceledException.cs
- Main.cs
- AssociationTypeEmitter.cs
- PathFigureCollectionValueSerializer.cs
- TakeQueryOptionExpression.cs
- CaretElement.cs
- KnownBoxes.cs
- CodeAccessSecurityEngine.cs
- DocumentCollection.cs
- RowTypePropertyElement.cs
- DataObjectFieldAttribute.cs