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
- ItemChangedEventArgs.cs
- TreeIterators.cs
- ConsoleKeyInfo.cs
- SelectionRange.cs
- XmlILModule.cs
- ReflectTypeDescriptionProvider.cs
- CacheChildrenQuery.cs
- ClrProviderManifest.cs
- UnaryExpressionHelper.cs
- DependentList.cs
- counter.cs
- MyContact.cs
- SecureUICommand.cs
- OuterGlowBitmapEffect.cs
- ClickablePoint.cs
- PartitionResolver.cs
- GlyphRunDrawing.cs
- QuaternionAnimation.cs
- SiteMapSection.cs
- BoolLiteral.cs
- PropertyNames.cs
- HMACSHA256.cs
- XmlSchemaValidationException.cs
- RenderData.cs
- XmlBinaryReader.cs
- AttachedPropertyMethodSelector.cs
- ProxyGenerationError.cs
- DatePickerTextBox.cs
- TypeGenericEnumerableViewSchema.cs
- COM2PictureConverter.cs
- GenericRootAutomationPeer.cs
- HttpWebRequestElement.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- BamlVersionHeader.cs
- QilPatternVisitor.cs
- EndpointAddressProcessor.cs
- CachedTypeface.cs
- SelectingProviderEventArgs.cs
- PageThemeBuildProvider.cs
- SafePEFileHandle.cs
- SelectingProviderEventArgs.cs
- XmlComplianceUtil.cs
- Constant.cs
- DynamicControlParameter.cs
- DataTableNewRowEvent.cs
- GradientStop.cs
- FtpWebRequest.cs
- TrackingDataItemValue.cs
- MsmqMessageSerializationFormat.cs
- MutableAssemblyCacheEntry.cs
- __Error.cs
- SizeF.cs
- WebPartCatalogAddVerb.cs
- SQLBinaryStorage.cs
- LabelLiteral.cs
- InstanceOwner.cs
- SoapFormatter.cs
- UnSafeCharBuffer.cs
- ProxyWebPartConnectionCollection.cs
- _Connection.cs
- __FastResourceComparer.cs
- PermissionRequestEvidence.cs
- ViewGenerator.cs
- OverflowException.cs
- Point3DCollection.cs
- ImmutableObjectAttribute.cs
- VirtualPathProvider.cs
- WebRequestModulesSection.cs
- Terminate.cs
- GeneralTransformCollection.cs
- OwnerDrawPropertyBag.cs
- PersonalizationStateInfo.cs
- AttributeEmitter.cs
- Stack.cs
- ProfileEventArgs.cs
- mediapermission.cs
- Match.cs
- LocalFileSettingsProvider.cs
- SystemInfo.cs
- _TLSstream.cs
- StringSource.cs
- GenericAuthenticationEventArgs.cs
- DispatcherHooks.cs
- AvtEvent.cs
- XmlSchemaChoice.cs
- IndentTextWriter.cs
- CngKeyBlobFormat.cs
- WebServiceResponseDesigner.cs
- XmlElementAttribute.cs
- StringFreezingAttribute.cs
- BuildProvider.cs
- XmlBinaryReader.cs
- ScriptResourceDefinition.cs
- HandlerBase.cs
- ImageMap.cs
- MemberPath.cs
- MimeWriter.cs
- XPathNodeList.cs
- ResourceDescriptionAttribute.cs
- HWStack.cs