Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / WinForms / Managed / System / WinForms / FeatureSupport.cs / 1305376 / 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. ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CqlGenerator.cs
- DependentList.cs
- WpfGeneratedKnownProperties.cs
- NativeCppClassAttribute.cs
- CodeLabeledStatement.cs
- GeneralTransform3DCollection.cs
- BitVector32.cs
- SettingsPropertyIsReadOnlyException.cs
- TickBar.cs
- XNodeNavigator.cs
- TypeUnloadedException.cs
- DBConcurrencyException.cs
- PackageRelationshipSelector.cs
- Transform.cs
- ScriptManager.cs
- CacheMemory.cs
- ToolTipAutomationPeer.cs
- RegexWorker.cs
- XmlSchemaObjectTable.cs
- SocketInformation.cs
- MarkedHighlightComponent.cs
- _DisconnectOverlappedAsyncResult.cs
- ObjectDataSourceDisposingEventArgs.cs
- HtmlInputControl.cs
- ResourceDisplayNameAttribute.cs
- RootBrowserWindowAutomationPeer.cs
- SmiXetterAccessMap.cs
- ReadOnlyAttribute.cs
- Certificate.cs
- CutCopyPasteHelper.cs
- CommentAction.cs
- TrackPointCollection.cs
- DesignerSerializationVisibilityAttribute.cs
- StringCollection.cs
- BulletedList.cs
- ListMarkerSourceInfo.cs
- SimpleRecyclingCache.cs
- StringUtil.cs
- HttpEncoderUtility.cs
- SelectionItemProviderWrapper.cs
- DataGridViewHitTestInfo.cs
- DataGridViewSelectedCellCollection.cs
- GetReadStreamResult.cs
- unsafenativemethodstextservices.cs
- UIAgentAsyncEndRequest.cs
- ValidationResult.cs
- XmlNamedNodeMap.cs
- ReferencedAssembly.cs
- AttachInfo.cs
- SqlUdtInfo.cs
- SelectionChangedEventArgs.cs
- PtsPage.cs
- FileRecordSequenceCompletedAsyncResult.cs
- Native.cs
- ZipIOExtraFieldElement.cs
- BinaryConverter.cs
- SqlIdentifier.cs
- DurableInstanceContextProvider.cs
- FunctionCommandText.cs
- FacetValues.cs
- OdbcRowUpdatingEvent.cs
- AutoGeneratedFieldProperties.cs
- OdbcReferenceCollection.cs
- EmbeddedMailObjectsCollection.cs
- WebPartEditVerb.cs
- SizeConverter.cs
- LedgerEntry.cs
- XsltInput.cs
- LocalizableAttribute.cs
- ToolStripSplitButton.cs
- UniqueConstraint.cs
- CustomErrorsSection.cs
- GlobalEventManager.cs
- DirectoryObjectSecurity.cs
- BitmapEffectInput.cs
- SRDisplayNameAttribute.cs
- MultipartContentParser.cs
- SimpleFieldTemplateUserControl.cs
- newinstructionaction.cs
- WebControlParameterProxy.cs
- ChtmlTextWriter.cs
- AutoResetEvent.cs
- DatagridviewDisplayedBandsData.cs
- EntityContainerAssociationSet.cs
- AcceleratedTokenAuthenticator.cs
- SemaphoreFullException.cs
- UrlMappingCollection.cs
- DecoderBestFitFallback.cs
- ContentDefinition.cs
- TabControlEvent.cs
- TextCompositionEventArgs.cs
- DesignerProperties.cs
- GridItemCollection.cs
- DataRowExtensions.cs
- MetadataPropertyvalue.cs
- XmlSerializationWriter.cs
- InstancePersistenceEvent.cs
- ImmutablePropertyDescriptorGridEntry.cs
- MSAAEventDispatcher.cs
- CharacterString.cs