123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332 |
- using LYFZ.OtherExpansion.SkinControl;
- using LYFZ.OtherExpansion.Win32.Callback;
- using LYFZ.OtherExpansion.Win32.Struct;
- using System;
- using System.Runtime.InteropServices;
- namespace LYFZ.OtherExpansion.Win32
- {
- public class NativeMethods
- {
- public struct PCURSORINFO
- {
- public int cbSize;
- public int flag;
- public IntPtr hCursor;
- public NativeMethods.Point ptScreenPos;
- }
- public struct Size
- {
- public int cx;
- public int cy;
- public Size(int x, int y)
- {
- this.cx = x;
- this.cy = y;
- }
- }
- [StructLayout(LayoutKind.Sequential, Pack = 1)]
- public struct BLENDFUNCTION
- {
- public byte BlendOp;
- public byte BlendFlags;
- public byte SourceConstantAlpha;
- public byte AlphaFormat;
- }
- public struct Point
- {
- public int x;
- public int y;
- public Point(int x, int y)
- {
- this.x = x;
- this.y = y;
- }
- }
- public enum ComboBoxButtonState
- {
- STATE_SYSTEM_NONE,
- STATE_SYSTEM_INVISIBLE = 32768,
- STATE_SYSTEM_PRESSED = 8
- }
- public struct ComboBoxInfo
- {
- public int cbSize;
- public RECT rcItem;
- public RECT rcButton;
- public NativeMethods.ComboBoxButtonState stateButton;
- public IntPtr hwndCombo;
- public IntPtr hwndEdit;
- public IntPtr hwndList;
- }
- public const int ULW_ALPHA = 2;
- public const int WM_USER = 1024;
- public const int EM_GETOLEINTERFACE = 1084;
- public const int CWP_SKIPDISABLED = 2;
- public const int CWP_SKIPINVISIBL = 1;
- public const int CWP_All = 0;
- private NativeMethods()
- {
- }
- [DllImport("user32.dll")]
- public static extern bool GetComboBoxInfo(IntPtr hwndCombo, ref NativeMethods.ComboBoxInfo info);
- [DllImport("user32.DLL")]
- public static extern uint GetCaretBlinkTime();
- [DllImport("user32.dll")]
- public static extern IntPtr LoadCursorFromFile(string fileName);
- [DllImport("user32.dll")]
- public static extern IntPtr ChildWindowFromPointEx(IntPtr pHwnd, NativeMethods.Point pt, uint uFlgs);
- [DllImport("user32.dll")]
- public static extern bool GetCursorInfo(out NativeMethods.PCURSORINFO pci);
- [DllImport("user32.dll")]
- public static extern bool SetCursorPos(int x, int y);
- [DllImport("user32.dll")]
- public static extern bool ReleaseCapture();
- [DllImport("user32.dll")]
- public static extern bool AnimateWindow(IntPtr whnd, int dwtime, int dwflag);
- [DllImport("user32.dll")]
- public static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);
- [DllImport("user32.dll")]
- public static extern bool LockWindowUpdate(IntPtr hWndLock);
- [DllImport("user32.dll")]
- public static extern bool MessageBeep(int uType);
- [DllImport("user32.dll")]
- public static extern IntPtr BeginPaint(IntPtr hWnd, ref PAINTSTRUCT ps);
- [DllImport("user32.dll")]
- public static extern bool EndPaint(IntPtr hWnd, ref PAINTSTRUCT ps);
- [DllImport("user32.dll")]
- public static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert);
- [DllImport("user32.dll", SetLastError = true)]
- public static extern bool TrackPopupMenuEx(IntPtr hMenu, uint uFlags, int x, int y, IntPtr hWnd, IntPtr tpmParams);
- [DllImport("user32.dll")]
- public static extern IntPtr TrackPopupMenu(IntPtr hMenu, int uFlags, int x, int y, int nReserved, IntPtr hWnd, IntPtr par);
- [DllImport("user32.dll")]
- public static extern bool RedrawWindow(IntPtr hWnd, ref RECT rectUpdate, IntPtr hrgnUpdate, int flags);
- [DllImport("user32.dll")]
- public static extern bool RedrawWindow(IntPtr hWnd, IntPtr rectUpdate, IntPtr hrgnUpdate, int flags);
- [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]
- public static extern bool AdjustWindowRectEx(ref RECT lpRect, int dwStyle, bool bMenu, int dwExStyle);
- [DllImport("user32.dll")]
- public static extern int GetSystemMetrics(int nIndex);
- [DllImport("user32.dll")]
- public static extern bool GetWindowInfo(IntPtr hwnd, ref WINDOWINFO pwi);
- [DllImport("user32.dll")]
- public static extern void DisableProcessWindowsGhosting();
- [DllImport("user32.dll")]
- public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
- [DllImport("user32.dll")]
- public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow);
- [DllImport("User32.dll")]
- public static extern bool FlashWindow(IntPtr hWnd, bool bInvert);
- [DllImport("user32.dll")]
- public static extern IntPtr DefWindowProc(IntPtr hWnd, int uMsg, IntPtr wParam, IntPtr lParam);
- [DllImport("user32.dll", BestFitMapping = false, CharSet = CharSet.Unicode, SetLastError = true)]
- public static extern IntPtr CreateWindowEx(int exstyle, string lpClassName, string lpWindowName, int dwStyle, int x, int y, int nWidth, int nHeight, IntPtr hwndParent, IntPtr Menu, IntPtr hInstance, IntPtr lpParam);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool DestroyWindow(IntPtr hWnd);
- [DllImport("user32.dll")]
- public static extern IntPtr LoadIcon(IntPtr hInstance, int lpIconName);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool DestroyIcon(IntPtr hIcon);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool IsZoomed(IntPtr hWnd);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndAfter, int x, int y, int cx, int cy, uint flags);
- [DllImport("gdi32.dll")]
- public static extern int CreateRoundRectRgn(int x1, int y1, int x2, int y2, int x3, int y3);
- [DllImport("user32.dll")]
- public static extern int SetWindowRgn(IntPtr hWnd, IntPtr hRgn, bool bRedraw);
- [DllImport("user32.dll")]
- public static extern int SetWindowRgn(IntPtr hwnd, int hRgn, bool bRedraw);
- [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]
- public static extern bool InvalidateRect(IntPtr hWnd, ref RECT rect, bool erase);
- [DllImport("user32.dll")]
- public static extern bool IsWindowVisible(IntPtr hWnd);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
- [DllImport("user32.dll")]
- public static extern IntPtr GetParent(IntPtr hWnd);
- [DllImport("user32.dll")]
- public static extern bool GetClientRect(IntPtr hWnd, ref RECT r);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool GetWindowRect(IntPtr hWnd, ref RECT lpRect);
- [DllImport("user32.dll")]
- public static extern int OffsetRect(ref RECT lpRect, int x, int y);
- [DllImport("user32")]
- public static extern int GetWindowLong(IntPtr hwnd, int nIndex);
- [DllImport("user32.dll")]
- public static extern IntPtr GetWindowLongPtr(IntPtr hwnd, int nIndex);
- [DllImport("user32.dll")]
- public static extern int SetWindowLong(IntPtr hwnd, int nIndex, int dwNewLong);
- [DllImport("user32.dll", CharSet = CharSet.Auto)]
- public static extern int GetWindowLong(HandleRef hWnd, int nIndex);
- [DllImport("user32.dll", CharSet = CharSet.Auto)]
- public static extern IntPtr SetWindowLong(HandleRef hWnd, int nIndex, int dwNewLong);
- [DllImport("user32.dll")]
- public static extern IntPtr SetWindowLongPtr(IntPtr hwnd, int nIndex, IntPtr dwNewLong);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool GetCursorPos(ref NativeMethods.Point lpPoint);
- [DllImport("user32.dll")]
- public static extern bool ScreenToClient(IntPtr hWnd, ref NativeMethods.Point lpPoint);
- [DllImport("user32.dll")]
- public static extern IntPtr GetDC(IntPtr handle);
- [DllImport("USER32.dll")]
- public static extern IntPtr GetDCEx(IntPtr hWnd, IntPtr hrgnClip, int flags);
- [DllImport("user32.dll")]
- public static extern IntPtr GetWindowDC(IntPtr handle);
- [DllImport("user32.dll")]
- public static extern int ReleaseDC(IntPtr handle, IntPtr hdc);
- [DllImport("user32.dll")]
- public static extern IntPtr GetDesktopWindow();
- [DllImport("user32.dll")]
- public static extern bool TrackMouseEvent(ref TRACKMOUSEEVENT lpEventTrack);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool PtInRect(ref RECT lprc, NativeMethods.Point pt);
- [DllImport("user32.dll")]
- public static extern bool EqualRect([In] ref RECT lprc1, [In] ref RECT lprc2);
- [DllImport("user32.dll", ExactSpelling = true)]
- public static extern IntPtr SetTimer(IntPtr hWnd, int nIDEvent, uint uElapse, IntPtr lpTimerFunc);
- [DllImport("user32.dll", ExactSpelling = true)]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool KillTimer(IntPtr hWnd, uint uIDEvent);
- [DllImport("user32.dll")]
- public static extern int SetFocus(IntPtr hWnd);
- [DllImport("user32.dll", SetLastError = true)]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool PostMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, int lParam);
- [DllImport("User32.dll", CharSet = CharSet.Auto, PreserveSig = false)]
- public static extern IRichEditOle SendMessage(IntPtr hWnd, int message, int wParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, ref TOOLINFO lParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, IntPtr lParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, ref RECT lParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, IntPtr wParam, [MarshalAs(UnmanagedType.LPTStr)] string lParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, IntPtr wParam, ref NMHDR lParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, IntPtr wParam, int lParam);
- [DllImport("user32.dll")]
- public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, ref SCROLLBARINFO lParam);
- [DllImport("user32.dll")]
- public static extern short GetKeyState(int nVirtKey);
- [DllImport("user32.dll")]
- public static extern bool ValidateRect(IntPtr hWnd, ref RECT lpRect);
- [DllImport("user32.dll")]
- public static extern int GetScrollBarInfo(IntPtr hWnd, uint idObject, ref SCROLLBARINFO psbi);
- [DllImport("user32.dll")]
- public static extern bool GetScrollInfo(IntPtr hwnd, int fnBar, ref SCROLLINFO scrollInfo);
- [DllImport("user32.dll")]
- public static extern bool EnableScrollBar(IntPtr hWnd, int wSBflags, int wArrows);
- public static IntPtr GetClassLongPtr(IntPtr hWnd, int nIndex)
- {
- if (IntPtr.Size == 8)
- {
- return NativeMethods.GetClassLongPtr64(hWnd, nIndex);
- }
- return NativeMethods.GetClassLongPtr32(hWnd, nIndex);
- }
- [DllImport("user32.dll", EntryPoint = "GetClassLong")]
- private static extern IntPtr GetClassLongPtr32(IntPtr hWnd, int nIndex);
- [DllImport("user32.dll", EntryPoint = "GetClassLongPtr")]
- private static extern IntPtr GetClassLongPtr64(IntPtr hWnd, int nIndex);
- [DllImport("user32.dll", SetLastError = true)]
- public static extern bool DrawIconEx(IntPtr hdc, int xLeft, int yTop, IntPtr hIcon, int cxWidth, int cyHeight, int istepIfAniCur, IntPtr hbrFlickerFreeDraw, int diFlags);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool GetWindowPlacement(IntPtr hWnd, ref WINDOWPLACEMENT lpwndpl);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool SetWindowPlacement(IntPtr hWnd, ref WINDOWPLACEMENT lpwndpl);
- [DllImport("user32.dll", ExactSpelling = true, SetLastError = true)]
- public static extern bool UpdateLayeredWindow(IntPtr hwnd, IntPtr hdcDst, ref NativeMethods.Point pptDst, ref NativeMethods.Size psize, IntPtr hdcSrc, ref NativeMethods.Point pprSrc, int crKey, ref NativeMethods.BLENDFUNCTION pblend, int dwFlags);
- [DllImport("USER32.dll", CharSet = CharSet.Auto)]
- public static extern IntPtr SetWindowsHookEx(int idHook, HookProc lpfn, int hMod, int dwThreadId);
- [DllImport("USER32.dll", CharSet = CharSet.Auto)]
- public static extern int CallNextHookEx(IntPtr hhk, int nCode, IntPtr wParam, IntPtr lParam);
- [DllImport("USER32.dll", CharSet = CharSet.Auto)]
- public static extern bool UnhookWindowsHookEx(IntPtr hhk);
- [DllImport("gdi32.dll")]
- public static extern int ExcludeClipRect(IntPtr hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);
- [DllImport("gdi32.dll", EntryPoint = "GdiAlphaBlend")]
- public static extern bool AlphaBlend(IntPtr hdcDest, int nXOriginDest, int nYOriginDest, int nWidthDest, int nHeightDest, IntPtr hdcSrc, int nXOriginSrc, int nYOriginSrc, int nWidthSrc, int nHeightSrc, NativeMethods.BLENDFUNCTION blendFunction);
- [DllImport("gdi32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool StretchBlt(IntPtr hDest, int X, int Y, int nWidth, int nHeight, IntPtr hdcSrc, int sX, int sY, int nWidthSrc, int nHeightSrc, int dwRop);
- [DllImport("gdi32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool BitBlt(IntPtr hdc, int nXDest, int nYDest, int nWidth, int nHeight, IntPtr hdcSrc, int nXSrc, int nYSrc, int dwRop);
- [DllImport("gdi32.dll")]
- public static extern IntPtr CreateDCA([MarshalAs(UnmanagedType.LPStr)] string lpszDriver, [MarshalAs(UnmanagedType.LPStr)] string lpszDevice, [MarshalAs(UnmanagedType.LPStr)] string lpszOutput, int lpInitData);
- [DllImport("gdi32.dll")]
- public static extern IntPtr CreateDCW([MarshalAs(UnmanagedType.LPWStr)] string lpszDriver, [MarshalAs(UnmanagedType.LPWStr)] string lpszDevice, [MarshalAs(UnmanagedType.LPWStr)] string lpszOutput, int lpInitData);
- [DllImport("gdi32.dll")]
- public static extern IntPtr CreateDC(string lpszDriver, string lpszDevice, string lpszOutput, int lpInitData);
- [DllImport("gdi32.dll")]
- public static extern IntPtr CreateCompatibleDC(IntPtr hdc);
- [DllImport("gdi32.dll")]
- public static extern IntPtr CreateCompatibleBitmap(IntPtr hdc, int nWidth, int nHeight);
- [DllImport("gdi32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool DeleteDC(IntPtr hdc);
- [DllImport("gdi32.dll", ExactSpelling = true)]
- public static extern IntPtr SelectObject(IntPtr hdc, IntPtr hgdiobj);
- [DllImport("gdi32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool DeleteObject(IntPtr hObject);
- [DllImport("gdi32.dll")]
- public static extern uint SetPixel(IntPtr hdc, int X, int Y, int crColor);
- [DllImport("gdi32.dll", CharSet = CharSet.Auto, ExactSpelling = true, SetLastError = true)]
- public static extern IntPtr CreateRectRgn(int x1, int y1, int x2, int y2);
- [DllImport("gdi32.dll", ExactSpelling = true, SetLastError = true)]
- public static extern int CombineRgn(IntPtr hRgn, IntPtr hRgn1, IntPtr hRgn2, int nCombineMode);
- [DllImport("comctl32.dll", CallingConvention = CallingConvention.StdCall)]
- public static extern bool InitCommonControlsEx(ref INITCOMMONCONTROLSEX iccex);
- [DllImport("kernel32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]
- public static extern int GetCurrentThreadId();
- [DllImport("kernel32.dll")]
- public static extern int RtlMoveMemory(ref NMHDR destination, IntPtr source, int length);
- [DllImport("kernel32.dll")]
- public static extern int RtlMoveMemory(ref NMTTDISPINFO destination, IntPtr source, int length);
- [DllImport("kernel32.dll")]
- public static extern int RtlMoveMemory(IntPtr destination, ref NMTTDISPINFO Source, int length);
- [DllImport("kernel32.dll")]
- public static extern int RtlMoveMemory(ref POINT destination, ref RECT Source, int length);
- [DllImport("kernel32.dll")]
- public static extern int RtlMoveMemory(ref NMTTCUSTOMDRAW destination, IntPtr Source, int length);
- [DllImport("kernel32.dll")]
- public static extern int RtlMoveMemory(ref NMCUSTOMDRAW destination, IntPtr Source, int length);
- [DllImport("kernel32.dll")]
- public static extern int MulDiv(int nNumber, int nNumerator, int nDenominator);
- [DllImport("uxtheme.dll", CharSet = CharSet.Unicode, ExactSpelling = true)]
- public static extern int SetWindowTheme(IntPtr hWnd, string pszSubAppName, string pszSubIdList);
- [DllImport("uxtheme.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool IsAppThemed();
- [DllImport("shell32.dll", CharSet = CharSet.Auto)]
- public static extern int FindExecutable(string filename, string directory, ref string result);
- [DllImport("shell32.dll", CharSet = CharSet.Auto)]
- public static extern int ShellExecute(IntPtr hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, int nShowCmd);
- [DllImport("kernel32.dll")]
- public static extern int WinExec(string lpCmdLine, int nCmdShow);
- [DllImport("ole32.dll")]
- public static extern int CreateILockBytesOnHGlobal(IntPtr hGlobal, bool fDeleteOnRelease, out ILockBytes ppLkbyt);
- [DllImport("ole32.dll")]
- public static extern int StgCreateDocfileOnILockBytes(ILockBytes plkbyt, uint grfMode, uint reserved, out IStorage ppstgOpen);
- [DllImport("ole32.dll")]
- public static extern int OleCreateFromFile([In] ref Guid rclsid, [MarshalAs(UnmanagedType.LPWStr)] string lpszFileName, [In] ref Guid riid, uint renderopt, ref FORMATETC pFormatEtc, IOleClientSite pClientSite, IStorage pStg, [MarshalAs(UnmanagedType.IUnknown)] out object ppvObj);
- [DllImport("ole32.dll")]
- public static extern int OleSetContainedObject([MarshalAs(UnmanagedType.IUnknown)] object pUnk, bool fContained);
- }
- }
|