Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- Calendar.cs
- Button.cs
- ZoneButton.cs
- XmlEntityReference.cs
- MeshGeometry3D.cs
- UserControlAutomationPeer.cs
- Row.cs
- ZipIOLocalFileBlock.cs
- MsdtcWrapper.cs
- CollectionEditorDialog.cs
- WorkflowPersistenceService.cs
- SecurityAccessDeniedException.cs
- MessageSmuggler.cs
- XamlTypeMapper.cs
- CellQuery.cs
- ModuleBuilderData.cs
- InstanceDataCollection.cs
- ListViewGroupConverter.cs
- RequestFactory.cs
- FixUpCollection.cs
- DynamicMetaObject.cs
- ProcessHostServerConfig.cs
- PathGradientBrush.cs
- TypeForwardedToAttribute.cs
- EntitySqlQueryBuilder.cs
- OperationResponse.cs
- LabelInfo.cs
- KeyGestureValueSerializer.cs
- RefreshEventArgs.cs
- RowSpanVector.cs
- DataGridViewUtilities.cs
- RichTextBoxAutomationPeer.cs
- QueryContinueDragEventArgs.cs
- SSmlParser.cs
- AncestorChangedEventArgs.cs
- FixedHighlight.cs
- XsltException.cs
- HttpConfigurationContext.cs
- MenuItemStyleCollection.cs
- TypeNameParser.cs
- DiscoveryReference.cs
- Types.cs
- HwndStylusInputProvider.cs
- UnmanagedMarshal.cs
- XmlILCommand.cs
- TextCharacters.cs
- CodeStatement.cs
- Descriptor.cs
- DocumentViewerBase.cs
- UrlMapping.cs
- PositiveTimeSpanValidator.cs
- PersistenceTypeAttribute.cs
- PageRequestManager.cs
- TypedTableHandler.cs
- HttpCacheParams.cs
- RequestStatusBarUpdateEventArgs.cs
- BaseCodePageEncoding.cs
- SqlSelectStatement.cs
- metrodevice.cs
- RoutedPropertyChangedEventArgs.cs
- StyleHelper.cs
- TabItem.cs
- Aes.cs
- UnsupportedPolicyOptionsException.cs
- HttpRequestCacheValidator.cs
- XmlAttributes.cs
- Menu.cs
- SafeCryptHandles.cs
- SortKey.cs
- InputLanguageManager.cs
- Binding.cs
- XslVisitor.cs
- PerfCounterSection.cs
- StrongNamePublicKeyBlob.cs
- ZipIOModeEnforcingStream.cs
- CustomTypeDescriptor.cs
- XsltContext.cs
- FixedDSBuilder.cs
- EntityDataSourceReferenceGroup.cs
- ProfessionalColorTable.cs
- TemplatePropertyEntry.cs
- GridViewSelectEventArgs.cs
- XmlSerializerSection.cs
- XmlWriterTraceListener.cs
- QuaternionConverter.cs
- KeyEvent.cs
- OleDbParameter.cs
- MarginsConverter.cs
- HttpRequestMessageProperty.cs
- ThemeDirectoryCompiler.cs
- Substitution.cs
- ClickablePoint.cs
- CodeBlockBuilder.cs
- TableCell.cs
- NameSpaceEvent.cs
- PropertyPath.cs
- ADConnectionHelper.cs
- Triangle.cs
- LinkedList.cs
- KerberosRequestorSecurityToken.cs