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
- TargetInvocationException.cs
- PropertyItemInternal.cs
- MediaSystem.cs
- DeviceSpecificDialogCachedState.cs
- NotSupportedException.cs
- CacheHelper.cs
- LicenseProviderAttribute.cs
- RowUpdatingEventArgs.cs
- PointUtil.cs
- DataGridTable.cs
- XPathCompileException.cs
- UniqueConstraint.cs
- DrawItemEvent.cs
- hebrewshape.cs
- BamlResourceDeserializer.cs
- DynamicValidator.cs
- XmlQueryRuntime.cs
- HandleExceptionArgs.cs
- DataGridViewLinkCell.cs
- HttpCacheVary.cs
- HostedNamedPipeTransportManager.cs
- WhereQueryOperator.cs
- RadioButtonList.cs
- DataKeyCollection.cs
- SQLByte.cs
- XamlInt32CollectionSerializer.cs
- RowParagraph.cs
- NetSectionGroup.cs
- EntityObject.cs
- QueryStringParameter.cs
- SingleStorage.cs
- SqlTypesSchemaImporter.cs
- ObjectDataSourceFilteringEventArgs.cs
- MsmqBindingBase.cs
- Math.cs
- TextContainerChangeEventArgs.cs
- FormViewCommandEventArgs.cs
- WrapPanel.cs
- StateRuntime.cs
- ResourcePermissionBaseEntry.cs
- WriterOutput.cs
- LightweightCodeGenerator.cs
- AggregateNode.cs
- LayoutSettings.cs
- EngineSiteSapi.cs
- BooleanToVisibilityConverter.cs
- DataBindingList.cs
- RadioButton.cs
- ToolBarTray.cs
- Point.cs
- IOThreadTimer.cs
- DataGridViewComboBoxColumn.cs
- CasesDictionary.cs
- UserPreferenceChangedEventArgs.cs
- TargetFrameworkUtil.cs
- FrameworkElementFactory.cs
- SqlBulkCopy.cs
- SQLSingleStorage.cs
- SynchronizedInputPattern.cs
- XmlTextEncoder.cs
- LabelInfo.cs
- XPathDocument.cs
- ToolStripOverflowButton.cs
- Win32SafeHandles.cs
- Number.cs
- CryptoProvider.cs
- Socket.cs
- DataServiceExpressionVisitor.cs
- ArgumentValidation.cs
- MailAddressCollection.cs
- SafeArrayRankMismatchException.cs
- ArrayConverter.cs
- MailMessage.cs
- Adorner.cs
- RemotingConfiguration.cs
- IncrementalCompileAnalyzer.cs
- PartialList.cs
- WindowsFormsHost.cs
- TraceFilter.cs
- MailDefinitionBodyFileNameEditor.cs
- SqlNode.cs
- TextDecorationCollectionConverter.cs
- X509RawDataKeyIdentifierClause.cs
- WebPartConnectionsDisconnectVerb.cs
- QilGenerator.cs
- UICuesEvent.cs
- LightweightCodeGenerator.cs
- ActivityValidator.cs
- InvalidComObjectException.cs
- Emitter.cs
- AuthenticationModuleElementCollection.cs
- safemediahandle.cs
- TransformDescriptor.cs
- MasterPageCodeDomTreeGenerator.cs
- RouteValueExpressionBuilder.cs
- CryptographicAttribute.cs
- EventWaitHandle.cs
- CachedFontFace.cs
- NonSerializedAttribute.cs
- CacheAxisQuery.cs