Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / UIAutomation / UIAutomationClient / MS / Win32 / NativeMethods.cs / 1305600 / NativeMethods.cs
//****************************************************************************
// HOW TO USE THIS FILE
//
// If you need access to a Win32 API that is not exposed, simply uncomment
// it in one of the following files:
//
// NativeMethods.cs
// UnsafeNativeMethods.cs
// SafeNativeMethods.cs
//
// Only uncomment what you need to avoid code bloat.
//
// DO NOT adjust the visibility of anything in these files. They are marked
// internal on pupose.
//***************************************************************************
using System;
using System.Runtime.InteropServices;
namespace MS.Win32
{
internal static class NativeMethods
{
public const int MAX_PATH = 260;
// Dialog Codes
internal const int WM_GETDLGCODE = 0x0087;
internal const int DLGC_STATIC = 0x0100;
[StructLayout(LayoutKind.Sequential)]
public struct HWND
{
public IntPtr h;
public static HWND Cast(IntPtr h)
{
HWND hTemp = new HWND();
hTemp.h = h;
return hTemp;
}
public static implicit operator IntPtr(HWND h)
{
return h.h;
}
public static HWND NULL
{
get
{
HWND hTemp = new HWND();
hTemp.h = IntPtr.Zero;
return hTemp;
}
}
public static bool operator==(HWND hl, HWND hr)
{
return hl.h == hr.h;
}
public static bool operator!=(HWND hl, HWND hr)
{
return hl.h != hr.h;
}
override public bool Equals(object oCompare)
{
HWND hr = Cast((HWND)oCompare);
return h == hr.h;
}
public override int GetHashCode()
{
return (int) h;
}
}
[StructLayout(LayoutKind.Sequential)]
public struct RECT
{
public int left;
public int top;
public int right;
public int bottom;
public RECT(int left, int top, int right, int bottom)
{
this.left = left;
this.top = top;
this.right = right;
this.bottom = bottom;
}
public bool IsEmpty
{
get
{
return left >= right || top >= bottom;
}
}
}
[StructLayout(LayoutKind.Sequential)]
public struct POINT
{
public int x;
public int y;
public POINT(int x, int y)
{
this.x = x;
this.y = y;
}
}
// WinEvent specific consts and delegates
public const int EVENT_MIN = 0;
public const int EVENT_MAX = 0x7FFFFFFF;
public const int EVENT_SYSTEM_MENUSTART = 0x0004;
public const int EVENT_SYSTEM_MENUEND = 0x0005;
public const int EVENT_SYSTEM_MENUPOPUPSTART = 0x0006;
public const int EVENT_SYSTEM_MENUPOPUPEND = 0x0007;
public const int EVENT_SYSTEM_CAPTURESTART = 0x0008;
public const int EVENT_SYSTEM_CAPTUREEND = 0x0009;
public const int EVENT_SYSTEM_SWITCHSTART = 0x0014;
public const int EVENT_SYSTEM_SWITCHEND = 0x0015;
public const int EVENT_OBJECT_CREATE = 0x8000;
public const int EVENT_OBJECT_DESTROY = 0x8001;
public const int EVENT_OBJECT_SHOW = 0x8002;
public const int EVENT_OBJECT_HIDE = 0x8003;
public const int EVENT_OBJECT_FOCUS = 0x8005;
public const int EVENT_OBJECT_STATECHANGE = 0x800A;
public const int EVENT_OBJECT_LOCATIONCHANGE = 0x800B;
public const int WINEVENT_OUTOFCONTEXT = 0x0000;
public const int WINEVENT_SKIPOWNTHREAD = 0x0001;
public const int WINEVENT_SKIPOWNPROCESS = 0x0002;
public const int WINEVENT_INCONTEXT = 0x0004;
// WinEvent fired when new Avalon UI is created
public const int EventObjectUIFragmentCreate = 0x6FFFFFFF;
// the delegate passed to USER for receiving a WinEvent
public delegate void WinEventProcDef(int winEventHook, int eventId, IntPtr hwnd, int idObject, int idChild, int eventThread, uint eventTime);
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//****************************************************************************
// HOW TO USE THIS FILE
//
// If you need access to a Win32 API that is not exposed, simply uncomment
// it in one of the following files:
//
// NativeMethods.cs
// UnsafeNativeMethods.cs
// SafeNativeMethods.cs
//
// Only uncomment what you need to avoid code bloat.
//
// DO NOT adjust the visibility of anything in these files. They are marked
// internal on pupose.
//***************************************************************************
using System;
using System.Runtime.InteropServices;
namespace MS.Win32
{
internal static class NativeMethods
{
public const int MAX_PATH = 260;
// Dialog Codes
internal const int WM_GETDLGCODE = 0x0087;
internal const int DLGC_STATIC = 0x0100;
[StructLayout(LayoutKind.Sequential)]
public struct HWND
{
public IntPtr h;
public static HWND Cast(IntPtr h)
{
HWND hTemp = new HWND();
hTemp.h = h;
return hTemp;
}
public static implicit operator IntPtr(HWND h)
{
return h.h;
}
public static HWND NULL
{
get
{
HWND hTemp = new HWND();
hTemp.h = IntPtr.Zero;
return hTemp;
}
}
public static bool operator==(HWND hl, HWND hr)
{
return hl.h == hr.h;
}
public static bool operator!=(HWND hl, HWND hr)
{
return hl.h != hr.h;
}
override public bool Equals(object oCompare)
{
HWND hr = Cast((HWND)oCompare);
return h == hr.h;
}
public override int GetHashCode()
{
return (int) h;
}
}
[StructLayout(LayoutKind.Sequential)]
public struct RECT
{
public int left;
public int top;
public int right;
public int bottom;
public RECT(int left, int top, int right, int bottom)
{
this.left = left;
this.top = top;
this.right = right;
this.bottom = bottom;
}
public bool IsEmpty
{
get
{
return left >= right || top >= bottom;
}
}
}
[StructLayout(LayoutKind.Sequential)]
public struct POINT
{
public int x;
public int y;
public POINT(int x, int y)
{
this.x = x;
this.y = y;
}
}
// WinEvent specific consts and delegates
public const int EVENT_MIN = 0;
public const int EVENT_MAX = 0x7FFFFFFF;
public const int EVENT_SYSTEM_MENUSTART = 0x0004;
public const int EVENT_SYSTEM_MENUEND = 0x0005;
public const int EVENT_SYSTEM_MENUPOPUPSTART = 0x0006;
public const int EVENT_SYSTEM_MENUPOPUPEND = 0x0007;
public const int EVENT_SYSTEM_CAPTURESTART = 0x0008;
public const int EVENT_SYSTEM_CAPTUREEND = 0x0009;
public const int EVENT_SYSTEM_SWITCHSTART = 0x0014;
public const int EVENT_SYSTEM_SWITCHEND = 0x0015;
public const int EVENT_OBJECT_CREATE = 0x8000;
public const int EVENT_OBJECT_DESTROY = 0x8001;
public const int EVENT_OBJECT_SHOW = 0x8002;
public const int EVENT_OBJECT_HIDE = 0x8003;
public const int EVENT_OBJECT_FOCUS = 0x8005;
public const int EVENT_OBJECT_STATECHANGE = 0x800A;
public const int EVENT_OBJECT_LOCATIONCHANGE = 0x800B;
public const int WINEVENT_OUTOFCONTEXT = 0x0000;
public const int WINEVENT_SKIPOWNTHREAD = 0x0001;
public const int WINEVENT_SKIPOWNPROCESS = 0x0002;
public const int WINEVENT_INCONTEXT = 0x0004;
// WinEvent fired when new Avalon UI is created
public const int EventObjectUIFragmentCreate = 0x6FFFFFFF;
// the delegate passed to USER for receiving a WinEvent
public delegate void WinEventProcDef(int winEventHook, int eventId, IntPtr hwnd, int idObject, int idChild, int eventThread, uint eventTime);
}
}
// 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
- ParseHttpDate.cs
- TimeStampChecker.cs
- MembershipUser.cs
- WebResourceAttribute.cs
- StaticDataManager.cs
- DataGridViewCellEventArgs.cs
- MailHeaderInfo.cs
- LinqDataSourceSelectEventArgs.cs
- CodeChecksumPragma.cs
- ObjectQuery_EntitySqlExtensions.cs
- PropertyGridEditorPart.cs
- RegexFCD.cs
- DiscoveryVersionConverter.cs
- PartialTrustVisibleAssembly.cs
- WpfMemberInvoker.cs
- TextElementEnumerator.cs
- FontDialog.cs
- XmlSerializerOperationBehavior.cs
- MenuRendererStandards.cs
- MatrixAnimationUsingPath.cs
- OptionalMessageQuery.cs
- VirtualPathExtension.cs
- SequenceFullException.cs
- MailBnfHelper.cs
- ValueOfAction.cs
- Native.cs
- RectangleF.cs
- MetadataWorkspace.cs
- PipeSecurity.cs
- FastEncoder.cs
- SafeTokenHandle.cs
- StandardToolWindows.cs
- NamedPipeDuplicateContext.cs
- SystemResourceHost.cs
- WebPartDeleteVerb.cs
- QuaternionIndependentAnimationStorage.cs
- AllMembershipCondition.cs
- TextEmbeddedObject.cs
- WorkflowItemsPresenter.cs
- StaticSiteMapProvider.cs
- Nodes.cs
- SessionStateSection.cs
- TransformCryptoHandle.cs
- EventQueueState.cs
- XPathCompileException.cs
- mediapermission.cs
- DirectoryInfo.cs
- TextPatternIdentifiers.cs
- CodeObject.cs
- ApplicationException.cs
- DbInsertCommandTree.cs
- CodeExpressionStatement.cs
- UpdatePanelTrigger.cs
- ToolStripSystemRenderer.cs
- PersistenceException.cs
- HttpApplicationFactory.cs
- CodeTryCatchFinallyStatement.cs
- ByteAnimation.cs
- TraceHelpers.cs
- TreeNodeConverter.cs
- StreamGeometryContext.cs
- DataControlFieldsEditor.cs
- RegistryPermission.cs
- ToolboxItemFilterAttribute.cs
- EncodingNLS.cs
- figurelengthconverter.cs
- CalendarDesigner.cs
- _LazyAsyncResult.cs
- ConfigViewGenerator.cs
- ListItemDetailViewAttribute.cs
- CharKeyFrameCollection.cs
- XmlQueryCardinality.cs
- TextBoxAutoCompleteSourceConverter.cs
- BindingNavigator.cs
- ServiceDebugBehavior.cs
- VerificationException.cs
- ImageCollectionCodeDomSerializer.cs
- SessionStateItemCollection.cs
- BezierSegment.cs
- ipaddressinformationcollection.cs
- BmpBitmapDecoder.cs
- PeerMaintainer.cs
- StrongNameUtility.cs
- BindingList.cs
- CorrelationActionMessageFilter.cs
- ECDsaCng.cs
- WindowClosedEventArgs.cs
- HandleExceptionArgs.cs
- ConnectionManagementElementCollection.cs
- ParameterElement.cs
- DesignerCategoryAttribute.cs
- DataServices.cs
- ToolboxBitmapAttribute.cs
- HtmlControlPersistable.cs
- ScopelessEnumAttribute.cs
- SystemInformation.cs
- DataColumn.cs
- KeyToListMap.cs
- SqlCacheDependencyDatabase.cs
- AsymmetricKeyExchangeFormatter.cs