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
- RawStylusInputCustomData.cs
- StreamUpgradeInitiator.cs
- DesignerTransaction.cs
- PerfService.cs
- ProcessProtocolHandler.cs
- AppSettingsExpressionBuilder.cs
- UIElement3DAutomationPeer.cs
- WpfXamlMember.cs
- ClientSettingsStore.cs
- DispatcherFrame.cs
- sqlnorm.cs
- RegisteredArrayDeclaration.cs
- DesignTimeXamlWriter.cs
- WebPartActionVerb.cs
- TraceSwitch.cs
- Events.cs
- BinaryObjectReader.cs
- SmiContextFactory.cs
- WebEvents.cs
- SoapBinding.cs
- DefaultPropertiesToSend.cs
- EdmPropertyAttribute.cs
- EntityConnectionStringBuilder.cs
- SynchronizedKeyedCollection.cs
- MinimizableAttributeTypeConverter.cs
- SqlMethods.cs
- DateTimeConverter.cs
- CheckableControlBaseAdapter.cs
- DataGridViewSortCompareEventArgs.cs
- MarkupExtensionReturnTypeAttribute.cs
- ResolvedKeyFrameEntry.cs
- SafeNativeMethodsOther.cs
- PropertyDescriptors.cs
- PolicyImporterElement.cs
- RegexMatch.cs
- RC2CryptoServiceProvider.cs
- BinaryFormatter.cs
- HttpBrowserCapabilitiesWrapper.cs
- GACMembershipCondition.cs
- MethodMessage.cs
- SetStoryboardSpeedRatio.cs
- AsyncStreamReader.cs
- IUnknownConstantAttribute.cs
- TemplatedAdorner.cs
- Token.cs
- SimpleLine.cs
- ThemeDirectoryCompiler.cs
- lengthconverter.cs
- StateMachineWorkflowDesigner.cs
- FixedSOMPageConstructor.cs
- RenameRuleObjectDialog.Designer.cs
- ObjectAnimationUsingKeyFrames.cs
- SerializerProvider.cs
- DataServiceQueryProvider.cs
- CheckBoxAutomationPeer.cs
- ServicePointManager.cs
- WpfPayload.cs
- JsonClassDataContract.cs
- XXXOnTypeBuilderInstantiation.cs
- LambdaCompiler.Generated.cs
- AttributeCallbackBuilder.cs
- EventMap.cs
- XmlReaderDelegator.cs
- StylusLogic.cs
- ServiceDescriptionSerializer.cs
- SendMessageContent.cs
- NavigationProperty.cs
- ManagedWndProcTracker.cs
- InstalledFontCollection.cs
- XamlRtfConverter.cs
- EntityDataSourceDesignerHelper.cs
- RedirectionProxy.cs
- LambdaExpression.cs
- Utils.cs
- TrustManager.cs
- HashCodeCombiner.cs
- SignedInfo.cs
- SystemIcmpV4Statistics.cs
- ObjectItemLoadingSessionData.cs
- TagElement.cs
- RootProfilePropertySettingsCollection.cs
- StrokeNode.cs
- AspNetHostingPermission.cs
- SR.cs
- CLSCompliantAttribute.cs
- UnsafeNativeMethodsMilCoreApi.cs
- DefaultPropertyAttribute.cs
- DirectionalLight.cs
- FontFamily.cs
- OleDbConnectionInternal.cs
- InvokeGenerator.cs
- Cursors.cs
- RelationshipManager.cs
- RichTextBoxConstants.cs
- TextSegment.cs
- HttpCacheParams.cs
- BaseComponentEditor.cs
- EntityTypeEmitter.cs
- FixedSOMSemanticBox.cs
- DataGridViewDataConnection.cs