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
- CodeDomSerializer.cs
- UserControl.cs
- CaseStatement.cs
- CallContext.cs
- EventSetterHandlerConverter.cs
- SQLDouble.cs
- LocalizableResourceBuilder.cs
- DBSchemaTable.cs
- EncodingInfo.cs
- SetterBaseCollection.cs
- SqlNotificationEventArgs.cs
- InternalMappingException.cs
- Boolean.cs
- HuffModule.cs
- ScrollBar.cs
- GridView.cs
- ContainerParaClient.cs
- RegularExpressionValidator.cs
- FunctionDetailsReader.cs
- ContentType.cs
- TemplateKeyConverter.cs
- ExtensionDataObject.cs
- CompiledRegexRunner.cs
- NamedPipeProcessProtocolHandler.cs
- Invariant.cs
- DatatypeImplementation.cs
- XPathPatternParser.cs
- ExpressionWriter.cs
- BamlLocalizabilityResolver.cs
- WebRequestModuleElementCollection.cs
- UnsafeNativeMethods.cs
- XmlSchemaValidationException.cs
- FontFaceLayoutInfo.cs
- TableRow.cs
- HttpClientCertificate.cs
- ViewGenerator.cs
- versioninfo.cs
- SiteOfOriginPart.cs
- CompositeControl.cs
- DesignerActionUI.cs
- AnimationException.cs
- PrinterUnitConvert.cs
- SequentialOutput.cs
- SingleKeyFrameCollection.cs
- CharacterBufferReference.cs
- CharacterBuffer.cs
- DataSet.cs
- DeclaredTypeValidator.cs
- HttpHandlerActionCollection.cs
- DataTableMappingCollection.cs
- HttpResponseHeader.cs
- MetafileHeaderEmf.cs
- EncoderExceptionFallback.cs
- LineGeometry.cs
- DebugInfoExpression.cs
- DataObjectAttribute.cs
- AbsoluteQuery.cs
- QuaternionAnimationUsingKeyFrames.cs
- ProtocolsConfigurationEntry.cs
- AssertFilter.cs
- JsonFormatGeneratorStatics.cs
- RowType.cs
- ToolStripSeparatorRenderEventArgs.cs
- QilCloneVisitor.cs
- XmlHierarchyData.cs
- SqlDataReaderSmi.cs
- IteratorFilter.cs
- ParameterReplacerVisitor.cs
- BaseAddressPrefixFilterElementCollection.cs
- AttributeSetAction.cs
- propertytag.cs
- CursorConverter.cs
- WebServiceClientProxyGenerator.cs
- UndoUnit.cs
- CookieProtection.cs
- NegotiateStream.cs
- SelectedDatesCollection.cs
- xml.cs
- DrawListViewSubItemEventArgs.cs
- WebBodyFormatMessageProperty.cs
- SafeFileMapViewHandle.cs
- DSASignatureDeformatter.cs
- PenCursorManager.cs
- FormCollection.cs
- Span.cs
- ProcessHostServerConfig.cs
- DataException.cs
- MatrixTransform.cs
- COSERVERINFO.cs
- DataGridPagerStyle.cs
- SchemaHelper.cs
- SizeIndependentAnimationStorage.cs
- PageSetupDialog.cs
- FileDialog_Vista.cs
- Baml2006KeyRecord.cs
- RotateTransform.cs
- PropertyKey.cs
- SourceFilter.cs
- PathFigure.cs
- LineInfo.cs