Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / AccessibleTech / longhorn / Automation / 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 : [....] 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
- WebControlsSection.cs
- StreamResourceInfo.cs
- RawStylusInputReport.cs
- XmlToDatasetMap.cs
- WorkItem.cs
- TreePrinter.cs
- TableRowGroup.cs
- SqlParameterCollection.cs
- DurationConverter.cs
- TimerEventSubscription.cs
- DesignerForm.cs
- CopyAction.cs
- __Error.cs
- SafeLibraryHandle.cs
- ComboBox.cs
- IntegerValidator.cs
- FrameworkReadOnlyPropertyMetadata.cs
- Rights.cs
- PolygonHotSpot.cs
- DataColumnMappingCollection.cs
- DefaultAsyncDataDispatcher.cs
- MsmqBindingElementBase.cs
- SymLanguageVendor.cs
- SqlServices.cs
- GPStream.cs
- IIS7ConfigurationLoader.cs
- InstalledFontCollection.cs
- TextServicesProperty.cs
- CfgParser.cs
- DbDataReader.cs
- CompilerState.cs
- Contracts.cs
- SecurityUtils.cs
- DrawItemEvent.cs
- UiaCoreProviderApi.cs
- DateTimeOffset.cs
- MultipleViewProviderWrapper.cs
- ExtendedPropertiesHandler.cs
- TextPointerBase.cs
- WebPartActionVerb.cs
- ConsoleTraceListener.cs
- ConstructorArgumentAttribute.cs
- PointF.cs
- SqlParameter.cs
- _CommandStream.cs
- OrderPreservingPipeliningSpoolingTask.cs
- DriveInfo.cs
- FederatedMessageSecurityOverHttp.cs
- RelationshipEndCollection.cs
- TextOptions.cs
- BamlTreeMap.cs
- CallbackValidatorAttribute.cs
- AssociationSetMetadata.cs
- UnicodeEncoding.cs
- SafeThreadHandle.cs
- InputLangChangeEvent.cs
- StrokeNodeOperations2.cs
- MimeTypeMapper.cs
- ChineseLunisolarCalendar.cs
- _NetworkingPerfCounters.cs
- ChildChangedEventArgs.cs
- FastPropertyAccessor.cs
- ColorInterpolationModeValidation.cs
- SingleStorage.cs
- OleDbInfoMessageEvent.cs
- WorkflowQueuingService.cs
- Span.cs
- NameTable.cs
- ApplicationId.cs
- PlainXmlSerializer.cs
- SafeHandles.cs
- TypedRowHandler.cs
- HtmlEncodedRawTextWriter.cs
- HttpSysSettings.cs
- RectangleConverter.cs
- SetIndexBinder.cs
- HttpValueCollection.cs
- XmlSchemaElement.cs
- SqlCacheDependencySection.cs
- OperandQuery.cs
- TypeConstant.cs
- TextBoxBase.cs
- Object.cs
- selecteditemcollection.cs
- TextDecorationCollection.cs
- PropertyItem.cs
- XmlSchemaDatatype.cs
- MessageCredentialType.cs
- ModelUIElement3D.cs
- HelpEvent.cs
- SolidBrush.cs
- GraphicsPathIterator.cs
- InstanceValue.cs
- TcpServerChannel.cs
- GenerateTemporaryTargetAssembly.cs
- ClientConfigPaths.cs
- DoubleStorage.cs
- XmlSchemaSimpleTypeList.cs
- SymbolEqualComparer.cs
- MatrixCamera.cs