C#调用WinAPI部分命令

 C#是针对WIndows而生的,开发WIndows应用最快。然而想要让自己程序进阶,就不需深入Windows底层,WinAPI为我们提供了一把利刃。

目录

1、查找窗口句柄

2、查找窗口内子对象

3、指定窗口样式

4、指定窗口扩展样式

5、调整窗口大小Z轴(层叠)

6、获得窗口样式

7、向窗口发送命令

8、指定父窗口

9、获取窗口进程

10、移动及缩放窗口

11、隐藏任务栏

12、隐藏任务栏按钮

13、WinAPI调用的类含常数定义


1、查找窗口句柄

[DllImport("user32.dll", EntryPoint = "FindWindow")]
private extern static IntPtr FindWindow(string lpClassName, string lpWindowName);

lpClassName类名,用Spy++工具可以获得

lpWindowName窗口标题,任务栏、任务管理器都可以看到

以上两个参数,可以只写一个,另一个写null

2、查找窗口内子对象

[DllImport("user32.dll", EntryPoint = "FindWindow")]private static extern IntPtr FindWindowEx( IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow )如:ShowWindow((int)FindWindowEx(FindWindow("Shell_TrayWnd", null), IntPtr.Zero, "Start", null), SW_RESTORE); //隐藏开始按钮

3、指定窗口样式

[DllImport("user32.dll")]SetWindowLong(PPThwnd, GWL_STYLE, s | WS_CHILD);

4、指定窗口扩展样式

SetWindowLong(IntPtr hWnd, GWL_EXSTYLE, WS_EX_TOOLWINDOW);

5、调整窗口大小Z轴(层叠)

[DllImport("User32.dll", CharSet = CharSet.Auto)]private static extern bool SetWindowPos(IntPtr hWnd, int hWndlnsertAfter, int X, int Y, int cx, int cy, uint Flags);

6、获得窗口样式

[DllImport("user32.dll", EntryPoint = "GetWindowLong")]public static extern int GetWindowLong(IntPtr hwnd, int nIndex);

7、向窗口发送命令

[DllImport("user32.dll", EntryPoint = "SendMessageA")]public static extern int SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);

8、指定父窗口

[DllImport("user32.dll")]private static extern IntPtr SetParent(IntPtr childIntPtr, IntPtr parentIntPtr);

9、获取窗口进程

[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);//获取进程ID

10、移动及缩放窗口

[DllImport("user32.dll", SetLastError = true)]public static extern bool MoveWindow(IntPtr hwnd, int x, int y, int cx, int cy, bool repaint);

*窗体被嵌入其它程序后,如果需哟调整位置及大小,就用这个!

11、隐藏任务栏

IntPtr trayHwnd = FindWindow("Shell_TrayWnd", null);ShowWindow(trayHwnd, 0);

“0”改为“1”,为显示任务栏

12、隐藏任务栏按钮

SetWindowLong((IntPtr)pvm , GWL_EXSTYLE, WS_EX_TOOLWINDOW);    //设置窗口扩展样式为WS_EX_TOOLWINDOW,可以让窗体不在任务栏中显示。

13、WinAPI调用的类含常数定义

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Runtime.InteropServices;namespace APIHelper
{/// <summary>/// Windows API 函数声明/// </summary>public class Win32API{#region .ctor()// No need to construct this objectprivate Win32API(){}#endregion#region Constans valuespublic const string TOOLBARCLASSNAME = "ToolbarWindow32";public const string REBARCLASSNAME = "ReBarWindow32";public const string PROGRESSBARCLASSNAME = "msctls_progress32";public const string SCROLLBAR = "SCROLLBAR";#endregion#region CallBackspublic delegate IntPtr HookProc(int nCode, IntPtr wParam, IntPtr lParam);#endregion#region Kernel32.dll functions[DllImport("kernel32.dll", ExactSpelling = true, CharSet = CharSet.Auto)]public static extern int GetCurrentThreadId();#endregion#region Gdi32.dll functions[DllImport("gdi32.dll")]static public extern bool StretchBlt(IntPtr hDCDest, int XOriginDest, int YOriginDest, int WidthDest, int HeightDest,IntPtr hDCSrc, int XOriginScr, int YOriginSrc, int WidthScr, int HeightScr, uint Rop);[DllImport("gdi32.dll")]static public extern IntPtr CreateCompatibleDC(IntPtr hDC);[DllImport("gdi32.dll")]static public extern IntPtr CreateCompatibleBitmap(IntPtr hDC, int Width, int Heigth);[DllImport("gdi32.dll")]static public extern IntPtr SelectObject(IntPtr hDC, IntPtr hObject);[DllImport("gdi32.dll")]static public extern bool BitBlt(IntPtr hDCDest, int XOriginDest, int YOriginDest, int WidthDest, int HeightDest,IntPtr hDCSrc, int XOriginScr, int YOriginSrc, uint Rop);[DllImport("gdi32.dll")]static public extern IntPtr DeleteDC(IntPtr hDC);[DllImport("gdi32.dll")]static public extern bool PatBlt(IntPtr hDC, int XLeft, int YLeft, int Width, int Height, uint Rop);[DllImport("gdi32.dll")]static public extern bool DeleteObject(IntPtr hObject);[DllImport("gdi32.dll")]static public extern uint GetPixel(IntPtr hDC, int XPos, int YPos);[DllImport("gdi32.dll")]static public extern int SetMapMode(IntPtr hDC, int fnMapMode);[DllImport("gdi32.dll")]static public extern int GetObjectType(IntPtr handle);[DllImport("gdi32")]public static extern IntPtr CreateDIBSection(IntPtr hdc, ref BITMAPINFO_FLAT bmi,int iUsage, ref int ppvBits, IntPtr hSection, int dwOffset);[DllImport("gdi32")]public static extern int GetDIBits(IntPtr hDC, IntPtr hbm, int StartScan, int ScanLines, int lpBits, BITMAPINFOHEADER bmi, int usage);[DllImport("gdi32")]public static extern int GetDIBits(IntPtr hdc, IntPtr hbm, int StartScan, int ScanLines, int lpBits, ref BITMAPINFO_FLAT bmi, int usage);[DllImport("gdi32")]public static extern IntPtr GetPaletteEntries(IntPtr hpal, int iStartIndex, int nEntries, byte[] lppe);[DllImport("gdi32")]public static extern IntPtr GetSystemPaletteEntries(IntPtr hdc, int iStartIndex, int nEntries, byte[] lppe);[DllImport("gdi32")]public static extern uint SetDCBrushColor(IntPtr hdc, uint crColor);[DllImport("gdi32")]public static extern IntPtr CreateSolidBrush(uint crColor);[DllImport("gdi32")]public static extern int SetBkMode(IntPtr hDC, BackgroundMode mode);[DllImport("gdi32")]public static extern int SetViewportOrgEx(IntPtr hdc, int x, int y, int param);[DllImport("gdi32")]public static extern uint SetTextColor(IntPtr hDC, uint colorRef);[DllImport("gdi32")]public static extern int SetStretchBltMode(IntPtr hDC, int StrechMode);#endregion#region Uxtheme.dll functions[DllImport("uxtheme.dll")]static public extern int SetWindowTheme(IntPtr hWnd, string AppID, string ClassID);#endregion#region User32.dll functions[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern IntPtr GetDC(IntPtr hWnd);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int ReleaseDC(IntPtr hWnd, IntPtr hDC);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern IntPtr GetDesktopWindow();[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool ShowWindow(IntPtr hWnd, short State);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool UpdateWindow(IntPtr hWnd);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool SetForegroundWindow(IntPtr hWnd);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int x, int y, int Width, int Height, uint flags);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool OpenClipboard(IntPtr hWndNewOwner);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool CloseClipboard();[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool EmptyClipboard();[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern IntPtr SetClipboardData(uint Format, IntPtr hData);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern bool GetMenuItemRect(IntPtr hWnd, IntPtr hMenu, uint Item, ref RECT rc);[DllImport("user32.dll", ExactSpelling = true, CharSet = CharSet.Auto)]public static extern IntPtr GetParent(IntPtr hWnd);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, int lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern IntPtr SendMessage(IntPtr hWnd, int msg, int wParam, IntPtr lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref RECT lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, ref POINT lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref TBBUTTON lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref TBBUTTONINFO lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, ref REBARBANDINFO lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref TVITEM lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref LVITEM lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref HDITEM lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern void SendMessage(IntPtr hWnd, int msg, int wParam, ref HD_HITTESTINFO hti);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern IntPtr PostMessage(IntPtr hWnd, int msg, int wParam, int lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern IntPtr SetWindowsHookEx(int hookid, HookProc pfnhook, IntPtr hinst, int threadid);[DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]public static extern bool UnhookWindowsHookEx(IntPtr hhook);[DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]public static extern IntPtr CallNextHookEx(IntPtr hhook, int code, IntPtr wparam, IntPtr lparam);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern IntPtr SetFocus(IntPtr hWnd);[DllImport("user32.dll", CharSet = CharSet.Auto)]public extern static int DrawText(IntPtr hdc, string lpString, int nCount, ref RECT lpRect, int uFormat);[DllImport("user32.dll", CharSet = CharSet.Auto)]public extern static IntPtr SetParent(IntPtr hChild, IntPtr hParent);[DllImport("user32.dll", CharSet = CharSet.Auto)]public extern static IntPtr GetDlgItem(IntPtr hDlg, int nControlID);[DllImport("user32.dll", CharSet = CharSet.Auto)]public extern static int GetClientRect(IntPtr hWnd, ref RECT rc);[DllImport("user32.dll", CharSet = CharSet.Auto)]public extern static int InvalidateRect(IntPtr hWnd, IntPtr rect, int bErase);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool WaitMessage();[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool PeekMessage(ref MSG msg, int hWnd, uint wFilterMin, uint wFilterMax, uint wFlag);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool GetMessage(ref MSG msg, int hWnd, uint wFilterMin, uint wFilterMax);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool TranslateMessage(ref MSG msg);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool DispatchMessage(ref MSG msg);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern IntPtr LoadCursor(IntPtr hInstance, uint cursor);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern IntPtr SetCursor(IntPtr hCursor);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern IntPtr GetFocus();[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool ReleaseCapture();[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern IntPtr BeginPaint(IntPtr hWnd, ref PAINTSTRUCT ps);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool EndPaint(IntPtr hWnd, ref PAINTSTRUCT ps);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool UpdateLayeredWindow(IntPtr hwnd, IntPtr hdcDst, ref POINT pptDst, ref SIZE psize, IntPtr hdcSrc, ref POINT pprSrc, Int32 crKey, ref BLENDFUNCTION pblend, Int32 dwFlags);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool GetWindowRect(IntPtr hWnd, ref RECT rect);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool ClientToScreen(IntPtr hWnd, ref POINT pt);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool TrackMouseEvent(ref TRACKMOUSEEVENTS tme);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool SetWindowRgn(IntPtr hWnd, IntPtr hRgn, bool redraw);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern ushort GetKeyState(int virtKey);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern bool MoveWindow(IntPtr hWnd, int x, int y, int width, int height, bool repaint);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int GetClassName(IntPtr hWnd, out STRINGBUFFER ClassName, int nMaxCount);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern IntPtr GetDCEx(IntPtr hWnd, IntPtr hRegion, uint flags);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern IntPtr GetWindowDC(IntPtr hWnd);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int FillRect(IntPtr hDC, ref RECT rect, IntPtr hBrush);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int GetWindowPlacement(IntPtr hWnd, ref WINDOWPLACEMENT wp);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int SetWindowText(IntPtr hWnd, string text);[DllImport("User32.dll", CharSet = CharSet.Auto)]public static extern int GetWindowText(IntPtr hWnd, out STRINGBUFFER text, int maxCount);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern int SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern IntPtr SetClipboardViewer(IntPtr hWndNewViewer);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern int ChangeClipboardChain(IntPtr hWndRemove, IntPtr hWndNewNext);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern int GetSystemMetrics(int nIndex);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern int SetScrollInfo(IntPtr hwnd, int bar, ref SCROLLINFO si, int fRedraw);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int ShowScrollBar(IntPtr hWnd, int bar, int show);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int EnableScrollBar(IntPtr hWnd, uint flags, uint arrows);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int BringWindowToTop(IntPtr hWnd);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int GetScrollInfo(IntPtr hwnd, int bar, ref SCROLLINFO si);[DllImport("user32.dll", CharSet = CharSet.Auto)]static public extern int ScrollWindowEx(IntPtr hWnd, int dx, int dy,ref RECT rcScroll, ref RECT rcClip, IntPtr UpdateRegion, ref RECT rcInvalidated, uint flags);[DllImport("user32.dll", CharSet = CharSet.Auto)]public static extern int IsWindow(IntPtr hWnd);[DllImport("user32", CharSet = CharSet.Auto)]public static extern int GetKeyboardState(byte[] pbKeyState);[DllImport("user32")]public static extern int ToAscii(int uVirtKey,       // [in]     Specifies the virtual-key code to be translated.int uScanCode,      // [in]     Specifies the hardware scan code of the key to be translated. The high-order bit of this value is set if the key is up (not pressed).byte[] lpbKeyState, // [in]     Pointer to a 256-byte array that contains the current keyboard state. Each element (byte) in the array contains the state of one key. If the high-order bit of a byte is set, the key is down (pressed). The low bit, if set, indicates that the key is toggled on. In this function, only the toggle bit of the CAPS LOCK key is relevant. The toggle state of the NUM LOCK and SCROLL LOCK keys is ignored.byte[] lpwTransKey, // [out]    Pointer to the buffer that receives the translated character or characters.int fuState);       // [in]     Specifies whether a menu is active. This parameter must be 1 if a menu is active, or 0 otherwise.#endregion#region Common Controls functions[DllImport("comctl32.dll")]public static extern bool InitCommonControlsEx(INITCOMMONCONTROLSEX icc);[DllImport("comctl32.dll")]public static extern bool InitCommonControls();[DllImport("comctl32.dll", EntryPoint = "DllGetVersion")]public extern static int GetCommonControlDLLVersion(ref DLLVERSIONINFO dvi);[DllImport("comctl32.dll")]public static extern IntPtr ImageList_Create(int width, int height, uint flags, int count, int grow);[DllImport("comctl32.dll")]public static extern bool ImageList_Destroy(IntPtr handle);[DllImport("comctl32.dll")]public static extern int ImageList_Add(IntPtr imageHandle, IntPtr hBitmap, IntPtr hMask);[DllImport("comctl32.dll")]public static extern bool ImageList_Remove(IntPtr imageHandle, int index);[DllImport("comctl32.dll")]public static extern bool ImageList_BeginDrag(IntPtr imageHandle, int imageIndex, int xHotSpot, int yHotSpot);[DllImport("comctl32.dll")]public static extern bool ImageList_DragEnter(IntPtr hWndLock, int x, int y);[DllImport("comctl32.dll")]public static extern bool ImageList_DragMove(int x, int y);[DllImport("comctl32.dll")]public static extern bool ImageList_DragLeave(IntPtr hWndLock);[DllImport("comctl32.dll")]public static extern void ImageList_EndDrag();#endregion#region Win32 Macro-Like helperspublic static int GET_X_LPARAM(int lParam){return (lParam & 0xffff);}public static int GET_Y_LPARAM(int lParam){return (lParam >> 16);}public static Point GetPointFromLPARAM(int lParam){return new Point(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam));}public static int LOW_ORDER(int param){return (param & 0xffff);}public static int HIGH_ORDER(int param){return (param >> 16);}#endregion}#region Win32 API 结构体声明/// <summary>/// Win32 API 结构体声明/// </summary>#region SIZE[StructLayout(LayoutKind.Sequential)]public struct SIZE{public int cx;public int cy;}#endregion#region RECT[StructLayout(LayoutKind.Sequential)]public struct RECT{public int left;public int top;public int right;public int bottom;}#endregion#region INITCOMMONCONTROLSEX[StructLayout(LayoutKind.Sequential, Pack = 1)]public class INITCOMMONCONTROLSEX{public int dwSize;public int dwICC;}#endregion#region TBBUTTON[StructLayout(LayoutKind.Sequential, Pack = 1)]public struct TBBUTTON{public int iBitmap;public int idCommand;public byte fsState;public byte fsStyle;public byte bReserved0;public byte bReserved1;public int dwData;public int iString;}#endregion#region POINT[StructLayout(LayoutKind.Sequential)]public struct POINT{public int x;public int y;}#endregion#region NMHDR[StructLayout(LayoutKind.Sequential)]public struct NMHDR{public IntPtr hwndFrom;public int idFrom;public int code;}#endregion#region TOOLTIPTEXTA[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]public struct TOOLTIPTEXTA{public NMHDR hdr;public IntPtr lpszText;[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 80)]public string szText;public IntPtr hinst;public int uFlags;}#endregion#region TOOLTIPTEXT[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct TOOLTIPTEXT{public NMHDR hdr;public IntPtr lpszText;[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 80)]public string szText;public IntPtr hinst;public int uFlags;}#endregion#region NMCUSTOMDRAW[StructLayout(LayoutKind.Sequential)]public struct NMCUSTOMDRAW{public NMHDR hdr;public int dwDrawStage;public IntPtr hdc;public RECT rc;public int dwItemSpec;public int uItemState;public int lItemlParam;}#endregion#region NMTBCUSTOMDRAW[StructLayout(LayoutKind.Sequential)]public struct NMTBCUSTOMDRAW{public NMCUSTOMDRAW nmcd;public IntPtr hbrMonoDither;public IntPtr hbrLines;public IntPtr hpenLines;public int clrText;public int clrMark;public int clrTextHighlight;public int clrBtnFace;public int clrBtnHighlight;public int clrHighlightHotTrack;public RECT rcText;public int nStringBkMode;public int nHLStringBkMode;}#endregion#region NMLVCUSTOMDRAW[StructLayout(LayoutKind.Sequential)]public struct NMLVCUSTOMDRAW{public NMCUSTOMDRAW nmcd;public uint clrText;public uint clrTextBk;public int iSubItem;}#endregion#region TBBUTTONINFO[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct TBBUTTONINFO{public int cbSize;public int dwMask;public int idCommand;public int iImage;public byte fsState;public byte fsStyle;public short cx;public IntPtr lParam;public IntPtr pszText;public int cchText;}#endregion#region REBARBANDINFO[StructLayout(LayoutKind.Sequential)]public struct REBARBANDINFO{public int cbSize;public int fMask;public int fStyle;public int clrFore;public int clrBack;public IntPtr lpText;public int cch;public int iImage;public IntPtr hwndChild;public int cxMinChild;public int cyMinChild;public int cx;public IntPtr hbmBack;public int wID;public int cyChild;public int cyMaxChild;public int cyIntegral;public int cxIdeal;public int lParam;public int cxHeader;}#endregion#region MOUSEHOOKSTRUCT[StructLayout(LayoutKind.Sequential)]public struct MOUSEHOOKSTRUCT{public POINT pt;public IntPtr hwnd;public int wHitTestCode;public IntPtr dwExtraInfo;}#endregion#region NMTOOLBAR[StructLayout(LayoutKind.Sequential)]public struct NMTOOLBAR{public NMHDR hdr;public int iItem;public TBBUTTON tbButton;public int cchText;public IntPtr pszText;public RECT rcButton;}#endregion#region NMREBARCHEVRON[StructLayout(LayoutKind.Sequential)]public struct NMREBARCHEVRON{public NMHDR hdr;public int uBand;public int wID;public int lParam;public RECT rc;public int lParamNM;}#endregion#region BITMAP[StructLayout(LayoutKind.Sequential)]public struct BITMAP{public long bmType;public long bmWidth;public long bmHeight;public long bmWidthBytes;public short bmPlanes;public short bmBitsPixel;public IntPtr bmBits;}#endregion#region BITMAPINFO_FLAT[StructLayout(LayoutKind.Sequential)]public struct BITMAPINFO_FLAT{public int bmiHeader_biSize;public int bmiHeader_biWidth;public int bmiHeader_biHeight;public short bmiHeader_biPlanes;public short bmiHeader_biBitCount;public int bmiHeader_biCompression;public int bmiHeader_biSizeImage;public int bmiHeader_biXPelsPerMeter;public int bmiHeader_biYPelsPerMeter;public int bmiHeader_biClrUsed;public int bmiHeader_biClrImportant;[MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst = 1024)]public byte[] bmiColors;}#endregion#region RGBQUADpublic struct RGBQUAD{public byte rgbBlue;public byte rgbGreen;public byte rgbRed;public byte rgbReserved;}#endregion#region BITMAPINFOHEADER[StructLayout(LayoutKind.Sequential)]public class BITMAPINFOHEADER{public int biSize = Marshal.SizeOf(typeof(BITMAPINFOHEADER));public int biWidth;public int biHeight;public short biPlanes;public short biBitCount;public int biCompression;public int biSizeImage;public int biXPelsPerMeter;public int biYPelsPerMeter;public int biClrUsed;public int biClrImportant;}#endregion#region BITMAPINFO[StructLayout(LayoutKind.Sequential)]public class BITMAPINFO{public BITMAPINFOHEADER bmiHeader = new BITMAPINFOHEADER();[MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray, SizeConst = 1024)]public byte[] bmiColors;}#endregion#region PALETTEENTRY[StructLayout(LayoutKind.Sequential)]public struct PALETTEENTRY{public byte peRed;public byte peGreen;public byte peBlue;public byte peFlags;}#endregion#region MSG[StructLayout(LayoutKind.Sequential)]public struct MSG{public IntPtr hwnd;public int message;public IntPtr wParam;public IntPtr lParam;public int time;public int pt_x;public int pt_y;}#endregion#region HD_HITTESTINFO[StructLayout(LayoutKind.Sequential)]public struct HD_HITTESTINFO{public POINT pt;public uint flags;public int iItem;}#endregion#region DLLVERSIONINFO[StructLayout(LayoutKind.Sequential)]public struct DLLVERSIONINFO{public int cbSize;public int dwMajorVersion;public int dwMinorVersion;public int dwBuildNumber;public int dwPlatformID;}#endregion#region PAINTSTRUCT[StructLayout(LayoutKind.Sequential)]public struct PAINTSTRUCT{public IntPtr hdc;public int fErase;public Rectangle rcPaint;public int fRestore;public int fIncUpdate;public int Reserved1;public int Reserved2;public int Reserved3;public int Reserved4;public int Reserved5;public int Reserved6;public int Reserved7;public int Reserved8;}#endregion#region BLENDFUNCTION[StructLayout(LayoutKind.Sequential, Pack = 1)]public struct BLENDFUNCTION{public byte BlendOp;public byte BlendFlags;public byte SourceConstantAlpha;public byte AlphaFormat;}#endregion#region TRACKMOUSEEVENTS[StructLayout(LayoutKind.Sequential)]public struct TRACKMOUSEEVENTS{public uint cbSize;public uint dwFlags;public IntPtr hWnd;public uint dwHoverTime;}#endregion#region STRINGBUFFER[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct STRINGBUFFER{[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 512)]public string szText;}#endregion#region NMTVCUSTOMDRAW[StructLayout(LayoutKind.Sequential)]public struct NMTVCUSTOMDRAW{public NMCUSTOMDRAW nmcd;public uint clrText;public uint clrTextBk;public int iLevel;}#endregion#region TVITEM[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct TVITEM{public uint mask;public IntPtr hItem;public uint state;public uint stateMask;public IntPtr pszText;public int cchTextMax;public int iImage;public int iSelectedImage;public int cChildren;public int lParam;}#endregion#region LVITEM[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct LVITEM{public uint mask;public int iItem;public int iSubItem;public uint state;public uint stateMask;public IntPtr pszText;public int cchTextMax;public int iImage;public int lParam;public int iIndent;}#endregion#region HDITEM[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct HDITEM{public uint mask;public int cxy;public IntPtr pszText;public IntPtr hbm;public int cchTextMax;public int fmt;public int lParam;public int iImage;public int iOrder;}#endregion#region WINDOWPLACEMENT[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct WINDOWPLACEMENT{public uint length;public uint flags;public uint showCmd;public POINT ptMinPosition;public POINT ptMaxPosition;public RECT rcNormalPosition;}#endregion#region SCROLLINFO[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]public struct SCROLLINFO{public uint cbSize;public uint fMask;public int nMin;public int nMax;public uint nPage;public int nPos;public int nTrackPos;}#endregion#region MouseHookStruct[StructLayout(LayoutKind.Sequential)]public class MouseHookStruct{public POINT pt;public int hwnd;public int wHitTestCode;public int dwExtraInfo;}#endregion#region KeyBoardHook[StructLayout(LayoutKind.Sequential)]public class KeyboardHookStruct{public int vkCode;      // Specifies a virtual-key code. The code must be a value in the range 1 to 254.public int scanCode;    // Specifies a hardware scan code for the key.public int flags;       // Specifies the extended-key flag, event-injected flag, context code, and transition-state flag.public int time;        // Specifies the time stamp for this message.public int dwExtraInfo; // Specifies extra information associated with the message.}#endregion#endregion Win32 API 结构体声明#region Window API 常数声明/// <summary>/// Window API 常数声明/// </summary>#region Peek Message Flagspublic enum PeekMessageFlags{PM_NOREMOVE = 0,PM_REMOVE = 1,PM_NOYIELD = 2}#endregion#region Windows Messagespublic enum WinMsg{WM_NULL = 0x0000,WM_CREATE = 0x0001,WM_DESTROY = 0x0002,WM_MOVE = 0x0003,WM_SIZE = 0x0005,WM_ACTIVATE = 0x0006,WM_SETFOCUS = 0x0007,WM_KILLFOCUS = 0x0008,WM_ENABLE = 0x000A,WM_SETREDRAW = 0x000B,WM_SETTEXT = 0x000C,WM_GETTEXT = 0x000D,WM_GETTEXTLENGTH = 0x000E,WM_PAINT = 0x000F,WM_CLOSE = 0x0010,WM_QUERYENDSESSION = 0x0011,WM_QUIT = 0x0012,WM_QUERYOPEN = 0x0013,WM_ERASEBKGND = 0x0014,WM_SYSCOLORCHANGE = 0x0015,WM_ENDSESSION = 0x0016,WM_SHOWWINDOW = 0x0018,WM_CTLCOLOR = 0x0019,WM_WININICHANGE = 0x001A,WM_SETTINGCHANGE = 0x001A,WM_DEVMODECHANGE = 0x001B,WM_ACTIVATEAPP = 0x001C,WM_FONTCHANGE = 0x001D,WM_TIMECHANGE = 0x001E,WM_CANCELMODE = 0x001F,WM_SETCURSOR = 0x0020,WM_MOUSEACTIVATE = 0x0021,WM_CHILDACTIVATE = 0x0022,WM_QUEUESYNC = 0x0023,WM_GETMINMAXINFO = 0x0024,WM_PAINTICON = 0x0026,WM_ICONERASEBKGND = 0x0027,WM_NEXTDLGCTL = 0x0028,WM_SPOOLERSTATUS = 0x002A,WM_DRAWITEM = 0x002B,WM_MEASUREITEM = 0x002C,WM_DELETEITEM = 0x002D,WM_VKEYTOITEM = 0x002E,WM_CHARTOITEM = 0x002F,WM_SETFONT = 0x0030,WM_GETFONT = 0x0031,WM_SETHOTKEY = 0x0032,WM_GETHOTKEY = 0x0033,WM_QUERYDRAGICON = 0x0037,WM_COMPAREITEM = 0x0039,WM_GETOBJECT = 0x003D,WM_COMPACTING = 0x0041,WM_COMMNOTIFY = 0x0044,WM_WINDOWPOSCHANGING = 0x0046,WM_WINDOWPOSCHANGED = 0x0047,WM_POWER = 0x0048,WM_COPYDATA = 0x004A,WM_CANCELJOURNAL = 0x004B,WM_NOTIFY = 0x004E,WM_INPUTLANGCHANGEREQUEST = 0x0050,WM_INPUTLANGCHANGE = 0x0051,WM_TCARD = 0x0052,WM_HELP = 0x0053,WM_USERCHANGED = 0x0054,WM_NOTIFYFORMAT = 0x0055,WM_CONTEXTMENU = 0x007B,WM_STYLECHANGING = 0x007C,WM_STYLECHANGED = 0x007D,WM_DISPLAYCHANGE = 0x007E,WM_GETICON = 0x007F,WM_SETICON = 0x0080,WM_NCCREATE = 0x0081,WM_NCDESTROY = 0x0082,WM_NCCALCSIZE = 0x0083,WM_NCHITTEST = 0x0084,WM_NCPAINT = 0x0085,WM_NCACTIVATE = 0x0086,WM_GETDLGCODE = 0x0087,WM_SYNCPAINT = 0x0088,WM_NCMOUSEMOVE = 0x00A0,WM_NCLBUTTONDOWN = 0x00A1,WM_NCLBUTTONUP = 0x00A2,WM_NCLBUTTONDBLCLK = 0x00A3,WM_NCRBUTTONDOWN = 0x00A4,WM_NCRBUTTONUP = 0x00A5,WM_NCRBUTTONDBLCLK = 0x00A6,WM_NCMBUTTONDOWN = 0x00A7,WM_NCMBUTTONUP = 0x00A8,WM_NCMBUTTONDBLCLK = 0x00A9,WM_KEYDOWN = 0x0100,WM_KEYUP = 0x0101,WM_CHAR = 0x0102,WM_DEADCHAR = 0x0103,WM_SYSKEYDOWN = 0x0104,WM_SYSKEYUP = 0x0105,WM_SYSCHAR = 0x0106,WM_SYSDEADCHAR = 0x0107,WM_KEYLAST = 0x0108,WM_IME_STARTCOMPOSITION = 0x010D,WM_IME_ENDCOMPOSITION = 0x010E,WM_IME_COMPOSITION = 0x010F,WM_IME_KEYLAST = 0x010F,WM_INITDIALOG = 0x0110,WM_COMMAND = 0x0111,WM_SYSCOMMAND = 0x0112,WM_TIMER = 0x0113,WM_HSCROLL = 0x0114,WM_VSCROLL = 0x0115,WM_INITMENU = 0x0116,WM_INITMENUPOPUP = 0x0117,WM_MENUSELECT = 0x011F,WM_MENUCHAR = 0x0120,WM_ENTERIDLE = 0x0121,WM_MENURBUTTONUP = 0x0122,WM_MENUDRAG = 0x0123,WM_MENUGETOBJECT = 0x0124,WM_UNINITMENUPOPUP = 0x0125,WM_MENUCOMMAND = 0x0126,WM_CTLCOLORWinMsgBOX = 0x0132,WM_CTLCOLOREDIT = 0x0133,WM_CTLCOLORLISTBOX = 0x0134,WM_CTLCOLORBTN = 0x0135,WM_CTLCOLORDLG = 0x0136,WM_CTLCOLORSCROLLBAR = 0x0137,WM_CTLCOLORSTATIC = 0x0138,WM_MOUSEMOVE = 0x0200,WM_LBUTTONDOWN = 0x0201,WM_LBUTTONUP = 0x0202,WM_LBUTTONDBLCLK = 0x0203,WM_RBUTTONDOWN = 0x0204,WM_RBUTTONUP = 0x0205,WM_RBUTTONDBLCLK = 0x0206,WM_MBUTTONDOWN = 0x0207,WM_MBUTTONUP = 0x0208,WM_MBUTTONDBLCLK = 0x0209,WM_MOUSEWHEEL = 0x020A,WM_PARENTNOTIFY = 0x0210,WM_ENTERMENULOOP = 0x0211,WM_EXITMENULOOP = 0x0212,WM_NEXTMENU = 0x0213,WM_SIZING = 0x0214,WM_CAPTURECHANGED = 0x0215,WM_MOVING = 0x0216,WM_DEVICECHANGE = 0x0219,WM_MDICREATE = 0x0220,WM_MDIDESTROY = 0x0221,WM_MDIACTIVATE = 0x0222,WM_MDIRESTORE = 0x0223,WM_MDINEXT = 0x0224,WM_MDIMAXIMIZE = 0x0225,WM_MDITILE = 0x0226,WM_MDICASCADE = 0x0227,WM_MDIICONARRANGE = 0x0228,WM_MDIGETACTIVE = 0x0229,WM_MDISETMENU = 0x0230,WM_ENTERSIZEMOVE = 0x0231,WM_EXITSIZEMOVE = 0x0232,WM_DROPFILES = 0x0233,WM_MDIREFRESHMENU = 0x0234,WM_IME_SETCONTEXT = 0x0281,WM_IME_NOTIFY = 0x0282,WM_IME_CONTROL = 0x0283,WM_IME_COMPOSITIONFULL = 0x0284,WM_IME_SELECT = 0x0285,WM_IME_CHAR = 0x0286,WM_IME_REQUEST = 0x0288,WM_IME_KEYDOWN = 0x0290,WM_IME_KEYUP = 0x0291,WM_MOUSEHOVER = 0x02A1,WM_MOUSELEAVE = 0x02A3,WM_CUT = 0x0300,WM_COPY = 0x0301,WM_PASTE = 0x0302,WM_CLEAR = 0x0303,WM_UNDO = 0x0304,WM_RENDERFORMAT = 0x0305,WM_RENDERALLFORMATS = 0x0306,WM_DESTROYCLIPBOARD = 0x0307,WM_DRAWCLIPBOARD = 0x0308,WM_PAINTCLIPBOARD = 0x0309,WM_VSCROLLCLIPBOARD = 0x030A,WM_SIZECLIPBOARD = 0x030B,WM_ASKCBFORMATNAME = 0x030C,WM_CHANGECBCHAIN = 0x030D,WM_HSCROLLCLIPBOARD = 0x030E,WM_QUERYNEWPALETTE = 0x030F,WM_PALETTEISCHANGING = 0x0310,WM_PALETTECHANGED = 0x0311,WM_HOTKEY = 0x0312,WM_PRINT = 0x0317,WM_PRINTCLIENT = 0x0318,WM_HANDHELDFIRST = 0x0358,WM_HANDHELDLAST = 0x035F,WM_AFXFIRST = 0x0360,WM_AFXLAST = 0x037F,WM_PENWINFIRST = 0x0380,WM_PENWINLAST = 0x038F,WM_APP = 0x8000,WM_USER = 0x0400,WM_REFLECT = WM_USER + 0x1c00}#endregion#region Window Stylespublic enum WindowStyles : uint{WS_OVERLAPPED = 0x00000000,WS_POPUP = 0x80000000,WS_CHILD = 0x40000000,WS_MINIMIZE = 0x20000000,WS_VISIBLE = 0x10000000,WS_DISABLED = 0x08000000,WS_CLIPSIBLINGS = 0x04000000,WS_CLIPCHILDREN = 0x02000000,WS_MAXIMIZE = 0x01000000,WS_CAPTION = 0x00C00000,WS_BORDER = 0x00800000,WS_DLGFRAME = 0x00400000,WS_VSCROLL = 0x00200000,WS_HSCROLL = 0x00100000,WS_SYSMENU = 0x00080000,WS_THICKFRAME = 0x00040000,WS_GROUP = 0x00020000,WS_TABSTOP = 0x00010000,WS_MINIMIZEBOX = 0x00020000,WS_MAXIMIZEBOX = 0x00010000,WS_TILED = 0x00000000,WS_ICONIC = 0x20000000,WS_SIZEBOX = 0x00040000,WS_POPUPWINDOW = 0x80880000,WS_OVERLAPPEDWINDOW = 0x00CF0000,WS_TILEDWINDOW = 0x00CF0000,WS_CHILDWINDOW = 0x40000000}#endregion#region Window Extended Stylespublic enum WindowExStyles{WS_EX_DLGMODALFRAME = 0x00000001,WS_EX_NOPARENTNOTIFY = 0x00000004,WS_EX_TOPMOST = 0x00000008,WS_EX_ACCEPTFILES = 0x00000010,WS_EX_TRANSPARENT = 0x00000020,WS_EX_MDICHILD = 0x00000040,WS_EX_TOOLWINDOW = 0x00000080,WS_EX_WINDOWEDGE = 0x00000100,WS_EX_CLIENTEDGE = 0x00000200,WS_EX_CONTEXTHELP = 0x00000400,WS_EX_RIGHT = 0x00001000,WS_EX_LEFT = 0x00000000,WS_EX_RTLREADING = 0x00002000,WS_EX_LTRREADING = 0x00000000,WS_EX_LEFTSCROLLBAR = 0x00004000,WS_EX_RIGHTSCROLLBAR = 0x00000000,WS_EX_CONTROLPARENT = 0x00010000,WS_EX_STATICEDGE = 0x00020000,WS_EX_APPWINDOW = 0x00040000,WS_EX_OVERLAPPEDWINDOW = 0x00000300,WS_EX_PALETTEWINDOW = 0x00000188,WS_EX_LAYERED = 0x00080000}#endregion#region ShowWindow Stylespublic enum ShowWindowStyles : short{SW_HIDE = 0,SW_SHOWNORMAL = 1,SW_NORMAL = 1,SW_SHOWMINIMIZED = 2,SW_SHOWMAXIMIZED = 3,SW_MAXIMIZE = 3,SW_SHOWNOACTIVATE = 4,SW_SHOW = 5,SW_MINIMIZE = 6,SW_SHOWMINNOACTIVE = 7,SW_SHOWNA = 8,SW_RESTORE = 9,SW_SHOWDEFAULT = 10,SW_FORCEMINIMIZE = 11,SW_MAX = 11}#endregion#region SetWindowPos Z Orderpublic enum SetWindowPosZOrder{HWND_TOP = 0,HWND_BOTTOM = 1,HWND_TOPMOST = -1,HWND_NOTOPMOST = -2}#endregion#region SetWindowPosFlagspublic enum SetWindowPosFlags : uint{SWP_NOSIZE = 0x0001,SWP_NOMOVE = 0x0002,SWP_NOZORDER = 0x0004,SWP_NOREDRAW = 0x0008,SWP_NOACTIVATE = 0x0010,SWP_FRAMECHANGED = 0x0020,SWP_SHOWWINDOW = 0x0040,SWP_HIDEWINDOW = 0x0080,SWP_NOCOPYBITS = 0x0100,SWP_NOOWNERZORDER = 0x0200,SWP_NOSENDCHANGING = 0x0400,SWP_DRAWFRAME = 0x0020,SWP_NOREPOSITION = 0x0200,SWP_DEFERERASE = 0x2000,SWP_ASYNCWINDOWPOS = 0x4000}#endregion#region Virtual Keyspublic enum VirtualKeys{VK_LBUTTON = 0x01,VK_CANCEL = 0x03,VK_BACK = 0x08,VK_TAB = 0x09,VK_CLEAR = 0x0C,VK_RETURN = 0x0D,VK_SHIFT = 0x10,VK_CONTROL = 0x11,VK_MENU = 0x12,VK_CAPITAL = 0x14,VK_ESCAPE = 0x1B,VK_SPACE = 0x20,VK_PRIOR = 0x21,VK_NEXT = 0x22,VK_END = 0x23,VK_HOME = 0x24,VK_LEFT = 0x25,VK_UP = 0x26,VK_RIGHT = 0x27,VK_DOWN = 0x28,VK_SELECT = 0x29,VK_EXECUTE = 0x2B,VK_SNAPSHOT = 0x2C,VK_HELP = 0x2F,VK_0 = 0x30,VK_1 = 0x31,VK_2 = 0x32,VK_3 = 0x33,VK_4 = 0x34,VK_5 = 0x35,VK_6 = 0x36,VK_7 = 0x37,VK_8 = 0x38,VK_9 = 0x39,VK_A = 0x41,VK_B = 0x42,VK_C = 0x43,VK_D = 0x44,VK_E = 0x45,VK_F = 0x46,VK_G = 0x47,VK_H = 0x48,VK_I = 0x49,VK_J = 0x4A,VK_K = 0x4B,VK_L = 0x4C,VK_M = 0x4D,VK_N = 0x4E,VK_O = 0x4F,VK_P = 0x50,VK_Q = 0x51,VK_R = 0x52,VK_S = 0x53,VK_T = 0x54,VK_U = 0x55,VK_V = 0x56,VK_W = 0x57,VK_X = 0x58,VK_Y = 0x59,VK_Z = 0x5A,VK_NUMPAD0 = 0x60,VK_NUMPAD1 = 0x61,VK_NUMPAD2 = 0x62,VK_NUMPAD3 = 0x63,VK_NUMPAD4 = 0x64,VK_NUMPAD5 = 0x65,VK_NUMPAD6 = 0x66,VK_NUMPAD7 = 0x67,VK_NUMPAD8 = 0x68,VK_NUMPAD9 = 0x69,VK_MULTIPLY = 0x6A,VK_ADD = 0x6B,VK_SEPARATOR = 0x6C,VK_SUBTRACT = 0x6D,VK_DECIMAL = 0x6E,VK_DIVIDE = 0x6F,VK_ATTN = 0xF6,VK_CRSEL = 0xF7,VK_EXSEL = 0xF8,VK_EREOF = 0xF9,VK_PLAY = 0xFA,VK_ZOOM = 0xFB,VK_NONAME = 0xFC,VK_PA1 = 0xFD,VK_OEM_CLEAR = 0xFE,VK_LWIN = 0x5B,VK_RWIN = 0x5C,VK_APPS = 0x5D,VK_LSHIFT = 0xA0,VK_RSHIFT = 0xA1,VK_LCONTROL = 0xA2,VK_RCONTROL = 0xA3,VK_LMENU = 0xA4,VK_RMENU = 0xA5}#endregion#region PatBlt Typespublic enum PatBltTypes{SRCCOPY = 0x00CC0020,SRCPAINT = 0x00EE0086,SRCAND = 0x008800C6,SRCINVERT = 0x00660046,SRCERASE = 0x00440328,NOTSRCCOPY = 0x00330008,NOTSRCERASE = 0x001100A6,MERGECOPY = 0x00C000CA,MERGEPAINT = 0x00BB0226,PATCOPY = 0x00F00021,PATPAINT = 0x00FB0A09,PATINVERT = 0x005A0049,DSTINVERT = 0x00550009,BLACKNESS = 0x00000042,WHITENESS = 0x00FF0062}#endregion#region Clipboard Formatspublic enum ClipboardFormats : uint{CF_TEXT = 1,CF_BITMAP = 2,CF_METAFILEPICT = 3,CF_SYLK = 4,CF_DIF = 5,CF_TIFF = 6,CF_OEMTEXT = 7,CF_DIB = 8,CF_PALETTE = 9,CF_PENDATA = 10,CF_RIFF = 11,CF_WAVE = 12,CF_UNICODETEXT = 13,CF_ENHMETAFILE = 14,CF_HDROP = 15,CF_LOCALE = 16,CF_MAX = 17,CF_OWNERDISPLAY = 0x0080,CF_DSPTEXT = 0x0081,CF_DSPBITMAP = 0x0082,CF_DSPMETAFILEPICT = 0x0083,CF_DSPENHMETAFILE = 0x008E,CF_PRIVATEFIRST = 0x0200,CF_PRIVATELAST = 0x02FF,CF_GDIOBJFIRST = 0x0300,CF_GDIOBJLAST = 0x03FF}#endregion#region Common Controls Initialization flagspublic enum CommonControlInitFlags{ICC_LISTVIEW_CLASSES = 0x00000001,ICC_TREEVIEW_CLASSES = 0x00000002,ICC_BAR_CLASSES = 0x00000004,ICC_TAB_CLASSES = 0x00000008,ICC_UPDOWN_CLASS = 0x00000010,ICC_PROGRESS_CLASS = 0x00000020,ICC_HOTKEY_CLASS = 0x00000040,ICC_ANIMATE_CLASS = 0x00000080,ICC_WIN95_CLASSES = 0x000000FF,ICC_DATE_CLASSES = 0x00000100,ICC_USEREX_CLASSES = 0x00000200,ICC_COOL_CLASSES = 0x00000400,ICC_INTERNET_CLASSES = 0x00000800,ICC_PAGESCROLLER_CLASS = 0x00001000,ICC_NATIVEFNTCTL_CLASS = 0x00002000}#endregion#region Common Controls Stylespublic enum CommonControlStyles{CCS_TOP = 0x00000001,CCS_NOMOVEY = 0x00000002,CCS_BOTTOM = 0x00000003,CCS_NORESIZE = 0x00000004,CCS_NOPARENTALIGN = 0x00000008,CCS_ADJUSTABLE = 0x00000020,CCS_NODIVIDER = 0x00000040,CCS_VERT = 0x00000080,CCS_LEFT = (CCS_VERT | CCS_TOP),CCS_RIGHT = (CCS_VERT | CCS_BOTTOM),CCS_NOMOVEX = (CCS_VERT | CCS_NOMOVEY)}#endregion#region ToolBar Stylespublic enum ToolBarStyles{TBSTYLE_BUTTON = 0x0000,TBSTYLE_SEP = 0x0001,TBSTYLE_CHECK = 0x0002,TBSTYLE_GROUP = 0x0004,TBSTYLE_CHECKGROUP = (TBSTYLE_GROUP | TBSTYLE_CHECK),TBSTYLE_DROPDOWN = 0x0008,TBSTYLE_AUTOSIZE = 0x0010,TBSTYLE_NOPREFIX = 0x0020,TBSTYLE_TOOLTIPS = 0x0100,TBSTYLE_WRAPABLE = 0x0200,TBSTYLE_ALTDRAG = 0x0400,TBSTYLE_FLAT = 0x0800,TBSTYLE_LIST = 0x1000,TBSTYLE_CUSTOMERASE = 0x2000,TBSTYLE_REGISTERDROP = 0x4000,TBSTYLE_TRANSPARENT = 0x8000,TBSTYLE_EX_DRAWDDARROWS = 0x00000001}#endregion#region ToolBar Ex Stylespublic enum ToolBarExStyles{TBSTYLE_EX_DRAWDDARROWS = 0x1,TBSTYLE_EX_HIDECLIPPEDBUTTONS = 0x10,TBSTYLE_EX_DOUBLEBUFFER = 0x80}#endregion#region ToolBar Messagespublic enum ToolBarMessages{WM_USER = 0x0400,TB_ENABLEBUTTON = (WM_USER + 1),TB_CHECKBUTTON = (WM_USER + 2),TB_PRESSBUTTON = (WM_USER + 3),TB_HIDEBUTTON = (WM_USER + 4),TB_INDETERMINATE = (WM_USER + 5),TB_MARKBUTTON = (WM_USER + 6),TB_ISBUTTONENABLED = (WM_USER + 9),TB_ISBUTTONCHECKED = (WM_USER + 10),TB_ISBUTTONPRESSED = (WM_USER + 11),TB_ISBUTTONHIDDEN = (WM_USER + 12),TB_ISBUTTONINDETERMINATE = (WM_USER + 13),TB_ISBUTTONHIGHLIGHTED = (WM_USER + 14),TB_SETSTATE = (WM_USER + 17),TB_GETSTATE = (WM_USER + 18),TB_ADDBITMAP = (WM_USER + 19),TB_ADDBUTTONSA = (WM_USER + 20),TB_INSERTBUTTONA = (WM_USER + 21),TB_ADDBUTTONS = (WM_USER + 20),TB_INSERTBUTTON = (WM_USER + 21),TB_DELETEBUTTON = (WM_USER + 22),TB_GETBUTTON = (WM_USER + 23),TB_BUTTONCOUNT = (WM_USER + 24),TB_COMMANDTOINDEX = (WM_USER + 25),TB_SAVERESTOREA = (WM_USER + 26),TB_CUSTOMIZE = (WM_USER + 27),TB_ADDSTRINGA = (WM_USER + 28),TB_GETITEMRECT = (WM_USER + 29),TB_BUTTONSTRUCTSIZE = (WM_USER + 30),TB_SETBUTTONSIZE = (WM_USER + 31),TB_SETBITMAPSIZE = (WM_USER + 32),TB_AUTOSIZE = (WM_USER + 33),TB_GETTOOLTIPS = (WM_USER + 35),TB_SETTOOLTIPS = (WM_USER + 36),TB_SETPARENT = (WM_USER + 37),TB_SETROWS = (WM_USER + 39),TB_GETROWS = (WM_USER + 40),TB_GETBITMAPFLAGS = (WM_USER + 41),TB_SETCMDID = (WM_USER + 42),TB_CHANGEBITMAP = (WM_USER + 43),TB_GETBITMAP = (WM_USER + 44),TB_GETBUTTONTEXTA = (WM_USER + 45),TB_GETBUTTONTEXTW = (WM_USER + 75),TB_REPLACEBITMAP = (WM_USER + 46),TB_SETINDENT = (WM_USER + 47),TB_SETIMAGELIST = (WM_USER + 48),TB_GETIMAGELIST = (WM_USER + 49),TB_LOADIMAGES = (WM_USER + 50),TB_GETRECT = (WM_USER + 51),TB_SETHOTIMAGELIST = (WM_USER + 52),TB_GETHOTIMAGELIST = (WM_USER + 53),TB_SETDISABLEDIMAGELIST = (WM_USER + 54),TB_GETDISABLEDIMAGELIST = (WM_USER + 55),TB_SETSTYLE = (WM_USER + 56),TB_GETSTYLE = (WM_USER + 57),TB_GETBUTTONSIZE = (WM_USER + 58),TB_SETBUTTONWIDTH = (WM_USER + 59),TB_SETMAXTEXTROWS = (WM_USER + 60),TB_GETTEXTROWS = (WM_USER + 61),TB_GETOBJECT = (WM_USER + 62),TB_GETBUTTONINFOW = (WM_USER + 63),TB_SETBUTTONINFOW = (WM_USER + 64),TB_GETBUTTONINFOA = (WM_USER + 65),TB_SETBUTTONINFOA = (WM_USER + 66),TB_INSERTBUTTONW = (WM_USER + 67),TB_ADDBUTTONSW = (WM_USER + 68),TB_HITTEST = (WM_USER + 69),TB_SETDRAWTEXTFLAGS = (WM_USER + 70),TB_GETHOTITEM = (WM_USER + 71),TB_SETHOTITEM = (WM_USER + 72),TB_SETANCHORHIGHLIGHT = (WM_USER + 73),TB_GETANCHORHIGHLIGHT = (WM_USER + 74),TB_SAVERESTOREW = (WM_USER + 76),TB_ADDSTRINGW = (WM_USER + 77),TB_MAPACCELERATORA = (WM_USER + 78),TB_GETINSERTMARK = (WM_USER + 79),TB_SETINSERTMARK = (WM_USER + 80),TB_INSERTMARKHITTEST = (WM_USER + 81),TB_MOVEBUTTON = (WM_USER + 82),TB_GETMAXSIZE = (WM_USER + 83),TB_SETEXTENDEDSTYLE = (WM_USER + 84),TB_GETEXTENDEDSTYLE = (WM_USER + 85),TB_GETPADDING = (WM_USER + 86),TB_SETPADDING = (WM_USER + 87),TB_SETINSERTMARKCOLOR = (WM_USER + 88),TB_GETINSERTMARKCOLOR = (WM_USER + 89)}#endregion#region ToolBar Notificationspublic enum ToolBarNotifications{TTN_NEEDTEXTA = ((0 - 520) - 0),TTN_NEEDTEXTW = ((0 - 520) - 10),TBN_QUERYINSERT = ((0 - 700) - 6),TBN_DROPDOWN = ((0 - 700) - 10),TBN_HOTITEMCHANGE = ((0 - 700) - 13)}#endregion#region Reflected Messagespublic enum ReflectedMessages{OCM__BASE = (WinMsg.WM_USER + 0x1c00),OCM_COMMAND = (OCM__BASE + WinMsg.WM_COMMAND),OCM_CTLCOLORBTN = (OCM__BASE + WinMsg.WM_CTLCOLORBTN),OCM_CTLCOLOREDIT = (OCM__BASE + WinMsg.WM_CTLCOLOREDIT),OCM_CTLCOLORDLG = (OCM__BASE + WinMsg.WM_CTLCOLORDLG),OCM_CTLCOLORLISTBOX = (OCM__BASE + WinMsg.WM_CTLCOLORLISTBOX),OCM_CTLCOLORWinMsgBOX = (OCM__BASE + WinMsg.WM_CTLCOLORWinMsgBOX),OCM_CTLCOLORSCROLLBAR = (OCM__BASE + WinMsg.WM_CTLCOLORSCROLLBAR),OCM_CTLCOLORSTATIC = (OCM__BASE + WinMsg.WM_CTLCOLORSTATIC),OCM_CTLCOLOR = (OCM__BASE + WinMsg.WM_CTLCOLOR),OCM_DRAWITEM = (OCM__BASE + WinMsg.WM_DRAWITEM),OCM_MEASUREITEM = (OCM__BASE + WinMsg.WM_MEASUREITEM),OCM_DELETEITEM = (OCM__BASE + WinMsg.WM_DELETEITEM),OCM_VKEYTOITEM = (OCM__BASE + WinMsg.WM_VKEYTOITEM),OCM_CHARTOITEM = (OCM__BASE + WinMsg.WM_CHARTOITEM),OCM_COMPAREITEM = (OCM__BASE + WinMsg.WM_COMPAREITEM),OCM_HSCROLL = (OCM__BASE + WinMsg.WM_HSCROLL),OCM_VSCROLL = (OCM__BASE + WinMsg.WM_VSCROLL),OCM_PARENTNOTIFY = (OCM__BASE + WinMsg.WM_PARENTNOTIFY),OCM_NOTIFY = (OCM__BASE + WinMsg.WM_NOTIFY)}#endregion#region Notification Messagespublic enum NotificationMessages{NM_FIRST = (0 - 0),NM_CUSTOMDRAW = (NM_FIRST - 12),NM_NCHITTEST = (NM_FIRST - 14)}#endregion#region ToolTip Flagspublic enum ToolTipFlags{TTF_CENTERTIP = 0x0002,TTF_RTLREADING = 0x0004,TTF_SUBCLASS = 0x0010,TTF_TRACK = 0x0020,TTF_ABSOLUTE = 0x0080,TTF_TRANSPARENT = 0x0100,TTF_DI_SETITEM = 0x8000}#endregion#region Custom Draw Return Flagspublic enum CustomDrawReturnFlags{CDRF_DODEFAULT = 0x00000000,CDRF_NEWFONT = 0x00000002,CDRF_SKIPDEFAULT = 0x00000004,CDRF_NOTIFYPOSTPAINT = 0x00000010,CDRF_NOTIFYITEMDRAW = 0x00000020,CDRF_NOTIFYSUBITEMDRAW = 0x00000020,CDRF_NOTIFYPOSTERASE = 0x00000040}#endregion#region Custom Draw Item State Flagspublic enum CustomDrawItemStateFlags{CDIS_SELECTED = 0x0001,CDIS_GRAYED = 0x0002,CDIS_DISABLED = 0x0004,CDIS_CHECKED = 0x0008,CDIS_FOCUS = 0x0010,CDIS_DEFAULT = 0x0020,CDIS_HOT = 0x0040,CDIS_MARKED = 0x0080,CDIS_INDETERMINATE = 0x0100}#endregion#region Custom Draw Draw State Flagspublic enum CustomDrawDrawStateFlags{CDDS_PREPAINT = 0x00000001,CDDS_POSTPAINT = 0x00000002,CDDS_PREERASE = 0x00000003,CDDS_POSTERASE = 0x00000004,CDDS_ITEM = 0x00010000,CDDS_ITEMPREPAINT = (CDDS_ITEM | CDDS_PREPAINT),CDDS_ITEMPOSTPAINT = (CDDS_ITEM | CDDS_POSTPAINT),CDDS_ITEMPREERASE = (CDDS_ITEM | CDDS_PREERASE),CDDS_ITEMPOSTERASE = (CDDS_ITEM | CDDS_POSTERASE),CDDS_SUBITEM = 0x00020000}#endregion#region Toolbar button info flagspublic enum ToolBarButtonInfoFlags{TBIF_IMAGE = 0x00000001,TBIF_TEXT = 0x00000002,TBIF_STATE = 0x00000004,TBIF_STYLE = 0x00000008,TBIF_LPARAM = 0x00000010,TBIF_COMMAND = 0x00000020,TBIF_SIZE = 0x00000040,I_IMAGECALLBACK = -1,I_IMAGENONE = -2}#endregion#region Toolbar button stylespublic enum ToolBarButtonStyles{TBSTYLE_BUTTON = 0x0000,TBSTYLE_SEP = 0x0001,TBSTYLE_CHECK = 0x0002,TBSTYLE_GROUP = 0x0004,TBSTYLE_CHECKGROUP = (TBSTYLE_GROUP | TBSTYLE_CHECK),TBSTYLE_DROPDOWN = 0x0008,TBSTYLE_AUTOSIZE = 0x0010,TBSTYLE_NOPREFIX = 0x0020,TBSTYLE_TOOLTIPS = 0x0100,TBSTYLE_WRAPABLE = 0x0200,TBSTYLE_ALTDRAG = 0x0400,TBSTYLE_FLAT = 0x0800,TBSTYLE_LIST = 0x1000,TBSTYLE_CUSTOMERASE = 0x2000,TBSTYLE_REGISTERDROP = 0x4000,TBSTYLE_TRANSPARENT = 0x8000,TBSTYLE_EX_DRAWDDARROWS = 0x00000001}#endregion#region Toolbar button statepublic enum ToolBarButtonStates{TBSTATE_CHECKED = 0x01,TBSTATE_PRESSED = 0x02,TBSTATE_ENABLED = 0x04,TBSTATE_HIDDEN = 0x08,TBSTATE_INDETERMINATE = 0x10,TBSTATE_WRAP = 0x20,TBSTATE_ELLIPSES = 0x40,TBSTATE_MARKED = 0x80}#endregion#region Windows Hook Codespublic enum WindowsHookCodes{WH_MSGFILTER = (-1),WH_JOURNALRECORD = 0,WH_JOURNALPLAYBACK = 1,WH_KEYBOARD = 2,WH_GETMESSAGE = 3,WH_CALLWNDPROC = 4,WH_CBT = 5,WH_SYSMSGFILTER = 6,WH_MOUSE = 7,WH_HARDWARE = 8,WH_DEBUG = 9,WH_SHELL = 10,WH_FOREGROUNDIDLE = 11,WH_CALLWNDPROCRET = 12,WH_KEYBOARD_LL = 13,WH_MOUSE_LL = 14}#endregion#region Mouse Hook Filterspublic enum MouseHookFilters{MSGF_DIALOGBOX = 0,MSGF_MESSAGEBOX = 1,MSGF_MENU = 2,MSGF_SCROLLBAR = 5,MSGF_NEXTWINDOW = 6}#endregion#region Draw Text format flagspublic enum DrawTextFormatFlags{DT_TOP = 0x00000000,DT_LEFT = 0x00000000,DT_CENTER = 0x00000001,DT_RIGHT = 0x00000002,DT_VCENTER = 0x00000004,DT_BOTTOM = 0x00000008,DT_WORDBREAK = 0x00000010,DT_SINGLELINE = 0x00000020,DT_EXPANDTABS = 0x00000040,DT_TABSTOP = 0x00000080,DT_NOCLIP = 0x00000100,DT_EXTERNALLEADING = 0x00000200,DT_CALCRECT = 0x00000400,DT_NOPREFIX = 0x00000800,DT_INTERNAL = 0x00001000,DT_EDITCONTROL = 0x00002000,DT_PATH_ELLIPSIS = 0x00004000,DT_END_ELLIPSIS = 0x00008000,DT_MODIFYSTRING = 0x00010000,DT_RTLREADING = 0x00020000,DT_WORD_ELLIPSIS = 0x00040000}#endregion#region Rebar Stylespublic enum RebarStyles{RBS_TOOLTIPS = 0x0100,RBS_VARHEIGHT = 0x0200,RBS_BANDBORDERS = 0x0400,RBS_FIXEDORDER = 0x0800,RBS_REGISTERDROP = 0x1000,RBS_AUTOSIZE = 0x2000,RBS_VERTICALGRIPPER = 0x4000,RBS_DBLCLKTOGGLE = 0x8000,}#endregion#region Rebar Notificationspublic enum RebarNotifications{RBN_FIRST = (0 - 831),RBN_HEIGHTCHANGE = (RBN_FIRST - 0),RBN_GETOBJECT = (RBN_FIRST - 1),RBN_LAYOUTCHANGED = (RBN_FIRST - 2),RBN_AUTOSIZE = (RBN_FIRST - 3),RBN_BEGINDRAG = (RBN_FIRST - 4),RBN_ENDDRAG = (RBN_FIRST - 5),RBN_DELETINGBAND = (RBN_FIRST - 6),RBN_DELETEDBAND = (RBN_FIRST - 7),RBN_CHILDSIZE = (RBN_FIRST - 8),RBN_CHEVRONPUSHED = (RBN_FIRST - 10)}#endregion#region Rebar Messagespublic enum RebarMessages{CCM_FIRST = 0x2000,WM_USER = 0x0400,RB_INSERTBANDA = (WM_USER + 1),RB_DELETEBAND = (WM_USER + 2),RB_GETBARINFO = (WM_USER + 3),RB_SETBARINFO = (WM_USER + 4),RB_GETBANDINFO = (WM_USER + 5),RB_SETBANDINFOA = (WM_USER + 6),RB_SETPARENT = (WM_USER + 7),RB_HITTEST = (WM_USER + 8),RB_GETRECT = (WM_USER + 9),RB_INSERTBANDW = (WM_USER + 10),RB_SETBANDINFOW = (WM_USER + 11),RB_GETBANDCOUNT = (WM_USER + 12),RB_GETROWCOUNT = (WM_USER + 13),RB_GETROWHEIGHT = (WM_USER + 14),RB_IDTOINDEX = (WM_USER + 16),RB_GETTOOLTIPS = (WM_USER + 17),RB_SETTOOLTIPS = (WM_USER + 18),RB_SETBKCOLOR = (WM_USER + 19),RB_GETBKCOLOR = (WM_USER + 20),RB_SETTEXTCOLOR = (WM_USER + 21),RB_GETTEXTCOLOR = (WM_USER + 22),RB_SIZETORECT = (WM_USER + 23),RB_SETCOLORSCHEME = (CCM_FIRST + 2),RB_GETCOLORSCHEME = (CCM_FIRST + 3),RB_BEGINDRAG = (WM_USER + 24),RB_ENDDRAG = (WM_USER + 25),RB_DRAGMOVE = (WM_USER + 26),RB_GETBARHEIGHT = (WM_USER + 27),RB_GETBANDINFOW = (WM_USER + 28),RB_GETBANDINFOA = (WM_USER + 29),RB_MINIMIZEBAND = (WM_USER + 30),RB_MAXIMIZEBAND = (WM_USER + 31),RB_GETDROPTARGET = (CCM_FIRST + 4),RB_GETBANDBORDERS = (WM_USER + 34),RB_SHOWBAND = (WM_USER + 35),RB_SETPALETTE = (WM_USER + 37),RB_GETPALETTE = (WM_USER + 38),RB_MOVEBAND = (WM_USER + 39),RB_SETUNICODEFORMAT = (CCM_FIRST + 5),RB_GETUNICODEFORMAT = (CCM_FIRST + 6)}#endregion#region Rebar Info Maskpublic enum RebarInfoMask{RBBIM_STYLE = 0x00000001,RBBIM_COLORS = 0x00000002,RBBIM_TEXT = 0x00000004,RBBIM_IMAGE = 0x00000008,RBBIM_CHILD = 0x00000010,RBBIM_CHILDSIZE = 0x00000020,RBBIM_SIZE = 0x00000040,RBBIM_BACKGROUND = 0x00000080,RBBIM_ID = 0x00000100,RBBIM_IDEALSIZE = 0x00000200,RBBIM_LPARAM = 0x00000400,BBIM_HEADERSIZE = 0x00000800}#endregion#region Rebar Stylespublic enum RebarStylesEx{RBBS_BREAK = 0x1,RBBS_CHILDEDGE = 0x4,RBBS_FIXEDBMP = 0x20,RBBS_GRIPPERALWAYS = 0x80,RBBS_USECHEVRON = 0x200}#endregion#region Object typespublic enum ObjectTypes{OBJ_PEN = 1,OBJ_BRUSH = 2,OBJ_DC = 3,OBJ_METADC = 4,OBJ_PAL = 5,OBJ_FONT = 6,OBJ_BITMAP = 7,OBJ_REGION = 8,OBJ_METAFILE = 9,OBJ_MEMDC = 10,OBJ_EXTPEN = 11,OBJ_ENHMETADC = 12,OBJ_ENHMETAFILE = 13}#endregion#region WM_MENUCHAR return valuespublic enum MenuCharReturnValues{MNC_IGNORE = 0,MNC_CLOSE = 1,MNC_EXECUTE = 2,MNC_SELECT = 3}#endregion#region Background Modepublic enum BackgroundMode{TRANSPARENT = 1,OPAQUE = 2}#endregion#region ListView Messagespublic enum ListViewMessages{LVM_FIRST = 0x1000,LVM_GETSUBITEMRECT = (LVM_FIRST + 56),LVM_GETITEMSTATE = (LVM_FIRST + 44),LVM_GETITEMTEXTW = (LVM_FIRST + 115)}#endregion#region Header Control Messagespublic enum HeaderControlMessages : int{HDM_FIRST = 0x1200,HDM_GETITEMRECT = (HDM_FIRST + 7),HDM_HITTEST = (HDM_FIRST + 6),HDM_SETIMAGELIST = (HDM_FIRST + 8),HDM_GETITEMW = (HDM_FIRST + 11),HDM_ORDERTOINDEX = (HDM_FIRST + 15)}#endregion#region Header Control Notificationspublic enum HeaderControlNotifications{HDN_FIRST = (0 - 300),HDN_BEGINTRACKW = (HDN_FIRST - 26),HDN_ENDTRACKW = (HDN_FIRST - 27),HDN_ITEMCLICKW = (HDN_FIRST - 22),}#endregion#region Header Control HitTest Flagspublic enum HeaderControlHitTestFlags : uint{HHT_NOWHERE = 0x0001,HHT_ONHEADER = 0x0002,HHT_ONDIVIDER = 0x0004,HHT_ONDIVOPEN = 0x0008,HHT_ABOVE = 0x0100,HHT_BELOW = 0x0200,HHT_TORIGHT = 0x0400,HHT_TOLEFT = 0x0800}#endregion#region List View sub item portionpublic enum SubItemPortion{LVIR_BOUNDS = 0,LVIR_ICON = 1,LVIR_LABEL = 2}#endregion#region Cursor Typepublic enum CursorType : uint{IDC_ARROW = 32512U,IDC_IBEAM = 32513U,IDC_WAIT = 32514U,IDC_CROSS = 32515U,IDC_UPARROW = 32516U,IDC_SIZE = 32640U,IDC_ICON = 32641U,IDC_SIZENWSE = 32642U,IDC_SIZENESW = 32643U,IDC_SIZEWE = 32644U,IDC_SIZENS = 32645U,IDC_SIZEALL = 32646U,IDC_NO = 32648U,IDC_HAND = 32649U,IDC_APPSTARTING = 32650U,IDC_HELP = 32651U}#endregion#region Tracker Event Flagspublic enum TrackerEventFlags : uint{TME_HOVER = 0x00000001,TME_LEAVE = 0x00000002,TME_QUERY = 0x40000000,TME_CANCEL = 0x80000000}#endregion#region Mouse Activate Flagspublic enum MouseActivateFlags{MA_ACTIVATE = 1,MA_ACTIVATEANDEAT = 2,MA_NOACTIVATE = 3,MA_NOACTIVATEANDEAT = 4}#endregion#region Dialog Codespublic enum DialogCodes{DLGC_WANTARROWS = 0x0001,DLGC_WANTTAB = 0x0002,DLGC_WANTALLKEYS = 0x0004,DLGC_WANTMESSAGE = 0x0004,DLGC_HASSETSEL = 0x0008,DLGC_DEFPUSHBUTTON = 0x0010,DLGC_UNDEFPUSHBUTTON = 0x00}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/622908.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

还在因为版本不一致重装node吗,用它试试

一、卸载nodejs 首先卸载已安装的nodejs&#xff0c;总体分三步 1)打开控制面板&#xff0c;卸载nodejs 2)打开计算机->高级->环境变量&#xff0c;删除path中nodejs相关的配置 3)打开nodejs安装目录&#xff0c;整体删除 打开cmd&#xff0c;输入以下命令&#xff…

为什么要进行漏洞扫描工作

随着互联网的普及和信息技术的飞速发展&#xff0c;网络安全问题愈发引人关注。其中&#xff0c;漏洞扫描作为保障网络安全的重要手段&#xff0c;受到了广泛的关注和应用。本文将详细介绍漏洞扫描的概念、效果、使用场景等&#xff0c;以期为读者提供有关漏洞扫描的全面了解。…

网络分流规则

现在的网络是越来越复杂。 有必要进行分流。 有一些geosite.dat是已经整理好的&#xff0c;包含许多的网站的分类&#xff1a; 分流规则&#xff1a; route规则 主要是: {"type": "field","outboundTag": "direct","domain&quo…

【Vue3】2-11 : 生命周期钩子函数及原理分析

本书目录&#xff1a;点击进入 一、组件生命周期概述 1.1 官方生命周期 1.2 钩子函数&#xff08;回调函数&#xff09; ▶ 生命周期可划分为三个部分(- >表示执行循序)&#xff1a; 二、实战&#xff1a;测试生命周期流程 &#xff1e; 代码 &#xff1e; 效果 一…

在CMake中自定义宏 add_definitions(-DDEBUG)

hehedalinux:~/Linux/loveDBTeacher-v6$ tree . ├── CMakeLists.txt └── test.c0 directories, 2 files hehedalinux:~/Linux/loveDBTeacher-v6$ test.c #include <stdio.h> #define NUMBER 3int main() {int a 10; #ifdef DEBUGprintf("我是一个程序猿,我…

QT获取程序编译时间与当前时间的区别及应用场景

一.获取编译时间与当前时间的区别 1.编译日期时间&#xff1a;这个信息通常用于标识某个源代码文件或整个应用程序的编译时间&#xff0c;程序一旦编译出来不会再改变&#xff0c;通常用于记录或跟踪代码的版本和更改历史。 2.运行当前日期时间&#xff1a;这是指程序在运行时…

UG装配-多运动组合动画与自动创建装配路径

当圆盘在装配过程中既有旋转运动&#xff0c;又有直线运动的时候&#xff0c;我们需要用到序列中的抽取路径 抽取路径命令在如下位置&#xff0c;需要注意的是&#xff0c;使用抽取路径前&#xff0c;如果有其他零件与所取对象配合&#xff0c;需要先物体脱离或使用拆卸对其脱离…

【STM32F103】继电器的用法

前言 因为最近用到了继电器&#xff0c;所以稍微记录一下继电器的用法。 如果我们需要点亮一个LED灯的时候&#xff0c;我们只需要用单片机的GPIO口去输出高低电平驱动就行。 但是我们需要通过单片机去控制大电压器件的开关的时候&#xff0c;我们就不能简简单单地用一个GPI…

linux Tcp总结

Tcp连接建立时的影响因素 在Client发出SYN后&#xff0c;如果过了1秒 &#xff0c;还没有收到Server的响应&#xff0c;那么就会进行第一次重传&#xff1b;如果经过2s的时间还没有收到Server的响应&#xff0c;就会进行第二次重传&#xff1b;一直重传tcp_syn_retries次。 对…

策略模式-实践

俗话说&#xff1a;条条大路通罗马。在很多情况下&#xff0c;实现某个目标的途径不止一条&#xff0c;例如我们在外出 旅游时可以选择多种不同的出行方式&#xff0c;如骑自行车、坐汽车、坐火车或者坐飞机&#xff0c;可根据实 际情况&#xff08;目的地、旅游预算、旅游时间…

星河璀璨:飞桨星河文心SDK与Gurdance珠联璧合让大模型更像人!

星河璀璨&#xff1a;飞桨星河文心SDK与Gurdance珠联璧合让大模型更像人&#xff01; 本项目效果惊艳&#xff0c;可以在AIStudio星河社区一键运行 只需要在cpu基础版下运行&#xff0c;妈妈再也不怕我的算力不够了&#xff01; 1、引言 2023年8月22日&#xff0c;百度董事…

3.14.1 函数对象 Page139~141

28行&#xff0c;doggie是一个类型为Dog的对象&#xff0c;而“()”是它的一个成员函数&#xff0c;doggie()实际上是doggie.operator() "operator()"既然是函数&#xff0c;那就可以有参数&#xff0c;也可以有返回值 运行结果为&#xff1a;

新微信公众号没有留言功能, 你们怎么破?

为什么公众号没有留言功能&#xff1f;从2018年2月开始&#xff0c;新注册的微信公众号取消了留言功能&#xff0c;原因是为了规避一些营销号通过虚假留言骗取读者信任。不过大部分公众号运营者对TX此举感到失望&#xff0c;一方面大片的留言就像店前排队的顾客&#xff0c;能体…

PLC、工业设备如何远程访问?贝锐蒲公英云智慧组网实现数据互通

在工业4.0时代&#xff0c;工业数字化的核心在于数据的互联互通&#xff0c;而在整个工业数字化、智能化的过程中&#xff0c;往往面临数据采集困难、设备运行情况难以知晓、部署管理难度大、后期维护成本高等问题。 显然&#xff0c;PLC设备在整个工业数字化进程中扮演的角色…

freertos任务管理器,任务监控

freertos提供了类似于windows的任务管理器功能&#xff0c;具体地如下&#xff1a; 1、configUSE_TRACE_FACILITY 和 configUSE_TRACE_FACILITY使能置1 2、调用vTaskList&#xff0c;如下&#xff1a; if(idleTaskCounter%84){char printlist[2048];vTaskList(printlist);Prin…

ssm基于Java的药店药品信息管理系统的设计与实现论文

摘 要 传统信息的管理大部分依赖于管理人员的手工登记与管理&#xff0c;然而&#xff0c;随着近些年信息技术的迅猛发展&#xff0c;让许多比较老套的信息管理模式进行了更新迭代&#xff0c;药品信息因为其管理内容繁杂&#xff0c;管理数量繁多导致手工进行处理不能满足广大…

11-适配器模式(Adapter)

意图 将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能在一起工作的那些类可以一起工作。 适配器模式属于结构模式。 类适配器模式&#xff08;通过继承的方式实现适配器模式&#xff09; Adapter类&#xff0c;通过继承src类&#xff0…

vulnhub靶场之DC-8

一.环境搭建 1.靶场描述 DC-8 is another purposely built vulnerable lab with the intent of gaining experience in the world of penetration testing. This challenge is a bit of a hybrid between being an actual challenge, and being a "proof of concept&quo…

【技术选型】Doris vs starRocks

比对结论 仅从当前能看到的数据中&#xff0c;相比于doris&#xff0c;starRocks在性能方面具备优势&#xff0c;且更新频率高&#xff08;降低维护成本&#xff09;。 目标诉求 并发性不能太低——相比于clickhouse不到100的QPS支持大表关联——降低数据清洗的压力&#xf…

家用洗地机哪个品牌质量比较好?高配置洗地机推荐

近年来&#xff0c;科技飞速发展&#xff0c;推动了多个新兴行业的崛起&#xff0c;其中洗地机行业也在不断扩大。然而&#xff0c;随着市场的蓬勃发展&#xff0c;洗地机市场的产品质量参差不齐。在众多品牌中&#xff0c;真正致力于深入研究和创新的品牌相对较少。洗地机的问…