Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / UIAutomation / UIAutomationTypes / MS / Internal / Automation / UiaCoreTypesApi.cs / 1 / UiaCoreTypesApi.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Imports from unmanaged UiaCore DLL // // History: // 06/02/2003 : BrendanM Ported to WCP // //--------------------------------------------------------------------------- using System; using System.Security; using System.Runtime.InteropServices; using Microsoft.Internal; namespace MS.Internal.Automation { internal static class UiaCoreTypesApi { //----------------------------------------------------- // // Other API types // //----------------------------------------------------- #region Other internal enum AutomationIdType { Property, Pattern, Event, ControlType, TextAttribute } internal const int UIA_E_ELEMENTNOTENABLED = unchecked((int)0x80040200); internal const int UIA_E_ELEMENTNOTAVAILABLE = unchecked((int)0x80040201); internal const int UIA_E_NOCLICKABLEPOINT = unchecked((int)0x80040202); internal const int UIA_E_PROXYASSEMBLYNOTLOADED = unchecked((int)0x80040203); #endregion Other //------------------------------------------------------ // // Internal Methods // //----------------------------------------------------- #region Internal Methods // // Support methods... // ////// Critical: This code calls into the unmanaged UIAutomationCore.dll /// TreatAsSafe: This method simply converts a Guid representing an automation type to an int, making it safe to use. /// [SecurityCritical,SecurityTreatAsSafe] internal static int UiaLookupId(AutomationIdType type, ref Guid guid) { return RawUiaLookupId( type, ref guid ); } ////// Critical: This code calls into the unmanaged UIAutomationCore.dll /// TreatAsSafe: This method only returns a fixed known object representing an Unsupported value, making it safe to use. /// [SecurityCritical,SecurityTreatAsSafe] internal static object UiaGetReservedNotSupportedValue() { object notSupportedValue; CheckError(RawUiaGetReservedNotSupportedValue(out notSupportedValue)); return notSupportedValue; } ////// Critical: This code calls into the unmanaged UIAutomationCore.dll /// TreatAsSafe: This method only returns a fixed known object representing a MixedAttribute value, making it safe to use. /// [SecurityCritical,SecurityTreatAsSafe] internal static object UiaGetReservedMixedAttributeValue() { object mixedAttributeValue; CheckError(RawUiaGetReservedMixedAttributeValue(out mixedAttributeValue)); return mixedAttributeValue; } #endregion Internal Methods //------------------------------------------------------ // // Private Methods // //------------------------------------------------------ #region Private Methods // Check hresult for error... private static void CheckError(int hr) { if (hr >= 0) { return; } Marshal.ThrowExceptionForHR(hr); } [SecurityCritical] [SuppressUnmanagedCodeSecurity] [DllImport(DllImport.UIAutomationCore, EntryPoint = "UiaLookupId", CharSet = CharSet.Unicode)] private static extern int RawUiaLookupId(AutomationIdType type, ref Guid guid); [SecurityCritical] [SuppressUnmanagedCodeSecurity] [DllImport(DllImport.UIAutomationCore, EntryPoint = "UiaGetReservedNotSupportedValue", CharSet = CharSet.Unicode)] private static extern int RawUiaGetReservedNotSupportedValue([MarshalAs(UnmanagedType.IUnknown)] out object notSupportedValue); [SecurityCritical] [SuppressUnmanagedCodeSecurity] [DllImport(DllImport.UIAutomationCore, EntryPoint = "UiaGetReservedMixedAttributeValue", CharSet = CharSet.Unicode)] private static extern int RawUiaGetReservedMixedAttributeValue([MarshalAs(UnmanagedType.IUnknown)] out object mixedAttributeValue); #endregion Private Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: Imports from unmanaged UiaCore DLL // // History: // 06/02/2003 : BrendanM Ported to WCP // //--------------------------------------------------------------------------- using System; using System.Security; using System.Runtime.InteropServices; using Microsoft.Internal; namespace MS.Internal.Automation { internal static class UiaCoreTypesApi { //----------------------------------------------------- // // Other API types // //----------------------------------------------------- #region Other internal enum AutomationIdType { Property, Pattern, Event, ControlType, TextAttribute } internal const int UIA_E_ELEMENTNOTENABLED = unchecked((int)0x80040200); internal const int UIA_E_ELEMENTNOTAVAILABLE = unchecked((int)0x80040201); internal const int UIA_E_NOCLICKABLEPOINT = unchecked((int)0x80040202); internal const int UIA_E_PROXYASSEMBLYNOTLOADED = unchecked((int)0x80040203); #endregion Other //------------------------------------------------------ // // Internal Methods // //----------------------------------------------------- #region Internal Methods // // Support methods... // ////// Critical: This code calls into the unmanaged UIAutomationCore.dll /// TreatAsSafe: This method simply converts a Guid representing an automation type to an int, making it safe to use. /// [SecurityCritical,SecurityTreatAsSafe] internal static int UiaLookupId(AutomationIdType type, ref Guid guid) { return RawUiaLookupId( type, ref guid ); } ////// Critical: This code calls into the unmanaged UIAutomationCore.dll /// TreatAsSafe: This method only returns a fixed known object representing an Unsupported value, making it safe to use. /// [SecurityCritical,SecurityTreatAsSafe] internal static object UiaGetReservedNotSupportedValue() { object notSupportedValue; CheckError(RawUiaGetReservedNotSupportedValue(out notSupportedValue)); return notSupportedValue; } ////// Critical: This code calls into the unmanaged UIAutomationCore.dll /// TreatAsSafe: This method only returns a fixed known object representing a MixedAttribute value, making it safe to use. /// [SecurityCritical,SecurityTreatAsSafe] internal static object UiaGetReservedMixedAttributeValue() { object mixedAttributeValue; CheckError(RawUiaGetReservedMixedAttributeValue(out mixedAttributeValue)); return mixedAttributeValue; } #endregion Internal Methods //------------------------------------------------------ // // Private Methods // //------------------------------------------------------ #region Private Methods // Check hresult for error... private static void CheckError(int hr) { if (hr >= 0) { return; } Marshal.ThrowExceptionForHR(hr); } [SecurityCritical] [SuppressUnmanagedCodeSecurity] [DllImport(DllImport.UIAutomationCore, EntryPoint = "UiaLookupId", CharSet = CharSet.Unicode)] private static extern int RawUiaLookupId(AutomationIdType type, ref Guid guid); [SecurityCritical] [SuppressUnmanagedCodeSecurity] [DllImport(DllImport.UIAutomationCore, EntryPoint = "UiaGetReservedNotSupportedValue", CharSet = CharSet.Unicode)] private static extern int RawUiaGetReservedNotSupportedValue([MarshalAs(UnmanagedType.IUnknown)] out object notSupportedValue); [SecurityCritical] [SuppressUnmanagedCodeSecurity] [DllImport(DllImport.UIAutomationCore, EntryPoint = "UiaGetReservedMixedAttributeValue", CharSet = CharSet.Unicode)] private static extern int RawUiaGetReservedMixedAttributeValue([MarshalAs(UnmanagedType.IUnknown)] out object mixedAttributeValue); #endregion Private Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- IPHostEntry.cs
- ToolStripContextMenu.cs
- TypedTableGenerator.cs
- ConfigurationFileMap.cs
- CookieParameter.cs
- HttpConfigurationSystem.cs
- CacheMemory.cs
- FacetChecker.cs
- ObjectQueryExecutionPlan.cs
- TypeDescriptionProvider.cs
- Formatter.cs
- ExecutionContext.cs
- DeleteIndexBinder.cs
- BitArray.cs
- BindingBase.cs
- BrowserCapabilitiesFactoryBase.cs
- Dynamic.cs
- TraceUtility.cs
- SystemPens.cs
- Themes.cs
- CharAnimationUsingKeyFrames.cs
- IncrementalHitTester.cs
- GeneralTransform3DCollection.cs
- KeyedCollection.cs
- CanonicalizationDriver.cs
- NamespaceListProperty.cs
- TextSchema.cs
- WorkItem.cs
- UriParserTemplates.cs
- WriteFileContext.cs
- TableAutomationPeer.cs
- DataTablePropertyDescriptor.cs
- VariableValue.cs
- HijriCalendar.cs
- OdbcInfoMessageEvent.cs
- UnsafePeerToPeerMethods.cs
- SqlDataSourceFilteringEventArgs.cs
- SocketAddress.cs
- TemplateParser.cs
- SqlDataSourceCommandEventArgs.cs
- BitmapCodecInfoInternal.cs
- SerialStream.cs
- CompiledRegexRunnerFactory.cs
- DeobfuscatingStream.cs
- XmlQueryOutput.cs
- LockCookie.cs
- EmptyEnumerable.cs
- EntityDataSourceEntityTypeFilterItem.cs
- LocationUpdates.cs
- GestureRecognizer.cs
- _CommandStream.cs
- MonthCalendarDesigner.cs
- IPEndPointCollection.cs
- Listbox.cs
- SettingsSavedEventArgs.cs
- MachineKeySection.cs
- ColumnMapCopier.cs
- ServerIdentity.cs
- SerializationStore.cs
- OleDbSchemaGuid.cs
- KeyTime.cs
- IPEndPoint.cs
- FramingDecoders.cs
- OutputCacheEntry.cs
- DataColumnCollection.cs
- AnnotationResourceCollection.cs
- HeaderUtility.cs
- SqlMethodTransformer.cs
- TextRunCache.cs
- TaskResultSetter.cs
- TemplateControl.cs
- LinearQuaternionKeyFrame.cs
- PointAnimationClockResource.cs
- ToolStripMenuItemCodeDomSerializer.cs
- CodeGotoStatement.cs
- ObjectDataSourceSelectingEventArgs.cs
- TextContainerChangedEventArgs.cs
- HttpCookiesSection.cs
- CodeSubDirectoriesCollection.cs
- EastAsianLunisolarCalendar.cs
- ConversionValidationRule.cs
- DetailsViewDeletedEventArgs.cs
- GridViewRowPresenterBase.cs
- ReadOnlyObservableCollection.cs
- EditorZoneBase.cs
- GeneratedCodeAttribute.cs
- XamlWriter.cs
- DefaultProfileManager.cs
- RotateTransform.cs
- DependencyPropertyValueSerializer.cs
- LinkedResource.cs
- WindowsTab.cs
- SizeValueSerializer.cs
- TableCellCollection.cs
- CodeSnippetCompileUnit.cs
- InkCollectionBehavior.cs
- AdRotatorDesigner.cs
- ReferenceEqualityComparer.cs
- TypedTableBase.cs
- UpdateEventArgs.cs