Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- DrawingCollection.cs
- LineSegment.cs
- CrossSiteScriptingValidation.cs
- WebPartActionVerb.cs
- DataTemplate.cs
- BinaryUtilClasses.cs
- VectorValueSerializer.cs
- XmlStreamStore.cs
- AttributeUsageAttribute.cs
- UriParserTemplates.cs
- Win32.cs
- XMLDiffLoader.cs
- TabControl.cs
- HuffModule.cs
- Comparer.cs
- TypeForwardedToAttribute.cs
- _TransmitFileOverlappedAsyncResult.cs
- WebBrowser.cs
- ListSourceHelper.cs
- PageSetupDialog.cs
- CodeGotoStatement.cs
- XmlAutoDetectWriter.cs
- Context.cs
- DataGridColumnHeaderCollection.cs
- ApplicationSettingsBase.cs
- InputProcessorProfiles.cs
- ColorAnimationBase.cs
- XmlUtil.cs
- UnsafeNativeMethods.cs
- UnicastIPAddressInformationCollection.cs
- RuntimeWrappedException.cs
- GridViewUpdateEventArgs.cs
- RecognizedAudio.cs
- NameValueConfigurationCollection.cs
- DecoderReplacementFallback.cs
- OdbcRowUpdatingEvent.cs
- RawUIStateInputReport.cs
- UIElementParagraph.cs
- XmlQueryOutput.cs
- ApplicationFileCodeDomTreeGenerator.cs
- WrappedIUnknown.cs
- TemplateNameScope.cs
- Pen.cs
- latinshape.cs
- DataControlField.cs
- ResourceContainer.cs
- ContainerUIElement3D.cs
- PermissionAttributes.cs
- LineServicesRun.cs
- ConfigurationSchemaErrors.cs
- GenericEnumerator.cs
- RegisteredDisposeScript.cs
- TimeZone.cs
- COM2EnumConverter.cs
- ProxyWebPartManager.cs
- SimpleApplicationHost.cs
- UIElement.cs
- AjaxFrameworkAssemblyAttribute.cs
- EventProxy.cs
- LiteralText.cs
- PropertyChange.cs
- BypassElement.cs
- ListItemConverter.cs
- GridViewAutomationPeer.cs
- MetafileEditor.cs
- DynamicDataResources.Designer.cs
- SqlConnectionFactory.cs
- WbmpConverter.cs
- DataSysAttribute.cs
- AutomationPattern.cs
- AutoResizedEvent.cs
- DetailsViewDeletedEventArgs.cs
- MatchAttribute.cs
- HtmlTableRow.cs
- CommandBinding.cs
- TableNameAttribute.cs
- ViewStateException.cs
- MailAddress.cs
- ScrollViewerAutomationPeer.cs
- UIElementParagraph.cs
- SmtpNetworkElement.cs
- SQLBoolean.cs
- PrivilegeNotHeldException.cs
- DataGridDetailsPresenterAutomationPeer.cs
- DesignerUtils.cs
- SystemGatewayIPAddressInformation.cs
- XpsS0ValidatingLoader.cs
- KeyManager.cs
- Timer.cs
- ProviderMetadata.cs
- SettingsSection.cs
- VirtualDirectoryMapping.cs
- NativeMethods.cs
- AccessedThroughPropertyAttribute.cs
- ConfigurationStrings.cs
- BrushValueSerializer.cs
- DataSourceNameHandler.cs
- BaseProcessor.cs
- ConnectionInterfaceCollection.cs
- SecurityHelper.cs