123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Runtime.InteropServices;
- namespace SmartCoalApplication.SystemLayer.FileDlgExtenders.Win32Types
- {
- internal static class NativeMethods
- {
- #region Delegates
- internal delegate bool EnumWindowsCallBack(IntPtr hWnd, int lParam);
- #endregion
- #region USER32
- [DllImport("user32.dll")]
- public static extern bool IsWindow(IntPtr hwnd);
- [DllImport("user32.dll")]
- internal static extern IntPtr CreateWindowEx(
- uint dwExStyle, string lpClassName, string lpWindowName, uint dwStyle, int x, int y,
- int nWidth, int nHeight, IntPtr hWndParent, IntPtr hMenu, IntPtr hInstance, IntPtr lpParam);
- [DllImport("user32.dll", CharSet = CharSet.Auto)]
- public static extern IntPtr GetParent(IntPtr hWnd);
- [DllImport("user32.dll")]
- internal static extern bool EnableWindow(IntPtr hWnd, bool bEnable);
- [DllImport("user32.dll")]
- internal static extern IntPtr GetDlgItem(IntPtr hDlg, int nIDDlgItem);
- [DllImport("user32.dll")]
- internal static extern bool SetDlgItemText(IntPtr hDlg, int nIDDlgItem, string lpString);
- [DllImport("User32.Dll")]
- public static extern int GetDlgCtrlID(IntPtr hWndCtl);
- [DllImport("user32.dll", SetLastError = true)]
- [return: MarshalAs(UnmanagedType.Bool)]
- internal static extern bool GetWindowInfo(HandleRef hwnd, out WINDOWINFO pwi);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool SetWindowText(HandleRef hWnd, string lpString);
- [DllImport("User32.Dll")]
- public static extern void GetClassName(HandleRef hWnd, StringBuilder param, int length);
- [DllImport("user32.Dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool EnumChildWindows(HandleRef hWndParent, EnumWindowsCallBack lpEnumFunc, int lParam);
- [DllImport("user32.dll", SetLastError = true)]
- public static extern IntPtr FindWindowEx(IntPtr parentHandle, IntPtr childAfter, string className, string windowTitle);
- [DllImport("user32.dll", SetLastError = true)]
- public static extern IntPtr FindWindowEx(IntPtr parentHandle, IntPtr childAfter, string className, IntPtr windowTitle);
- [DllImport("user32.dll")]
- internal static extern IntPtr SetParent(HandleRef hWndChild, HandleRef hWndNewParent);
- [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
- internal static extern IntPtr SendMessage(HandleRef hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
- [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
- internal static extern IntPtr SendMessage(HandleRef hWnd, uint Msg, IntPtr wParam, StringBuilder lParam);
- [DllImport("user32.dll", CharSet = CharSet.Auto)]
- public static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int x, int y, int Width, int Height, SetWindowPosFlags flags);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- internal static extern bool GetWindowRect(HandleRef hwnd, ref RECT rect);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- internal static extern bool GetClientRect(HandleRef hwnd, ref RECT rect);
- [DllImport("user32.dll")]
- [return: MarshalAs(UnmanagedType.Bool)]
- public static extern bool DestroyWindow(IntPtr hWnd);
- [DllImport("advapi32.dll", EntryPoint = "RegCreateKeyW")]
- public static extern int RegCreateKeyW([In] UIntPtr hKey, [In] [MarshalAs(UnmanagedType.LPWStr)] string lpSubKey, out IntPtr phkResult);
- [DllImport("advapi32.dll", EntryPoint = "RegOverridePredefKey")]
- public static extern int RegOverridePredefKey([In] UIntPtr hKey, [In] IntPtr hNewHKey);
- [DllImport("advapi32.dll", EntryPoint = "RegCloseKey")]
- public static extern int RegCloseKey([In] IntPtr hKey);
- /*
- [DllImport("user32.dll")]
- public static extern IntPtr SetActiveWindow(IntPtr hWnd);
- [DllImport("user32.dll")]
- public static extern IntPtr SetForegeoundWindow(IntPtr hWnd);
- */
- #endregion
- }
- }
|