2using System.Collections.Generic;
51 [MonoPInvokeCallback(typeof(
HookProc))]
52 private static IntPtr
Callback(
int code, IntPtr wParam, ref
MSG lParam)
54 if (code == 0 && lParam.message ==
WM.DROPFILES)
58 StringBuilder stringBuilder =
new StringBuilder(1024);
59 List<string> list =
new List<string>();
60 for (uint num2 = 0u; num2 < num; num2++)
63 list.Add(stringBuilder.ToString(0, num3));
64 stringBuilder.Length = 0;
static string m_ClassName
static DroppedFilesEvent OnDroppedFiles
static IntPtr Callback(int code, IntPtr wParam, ref MSG lParam)
static void UninstallHook()
static void InstallHook()
static bool EnumCallback(IntPtr W, IntPtr _)
delegate void DroppedFilesEvent(List< string > aPathNames, POINT aDropPoint)
static IntPtr SetWindowsHookEx(HookType hookType, HookProc lpfn, IntPtr hMod, uint dwThreadId)
static uint DragQueryFile(IntPtr hDrop, uint iFile, StringBuilder lpszFile, uint cch)
static void DragQueryPoint(IntPtr hDrop, out POINT pos)
static uint GetCurrentThreadId()
static void DragAcceptFiles(IntPtr hwnd, bool fAccept)
static IntPtr GetModuleHandle(string lpModuleName)
static bool UnhookWindowsHookEx(IntPtr hhk)
static void DragFinish(IntPtr hDrop)
static IntPtr CallNextHookEx(IntPtr hhk, int nCode, IntPtr wParam, ref MSG lParam)
static int GetClassName(IntPtr hWnd, StringBuilder lpClassName, int nMaxCount)
static bool IsWindowVisible(IntPtr hWnd)
static bool EnumThreadWindows(uint dwThreadId, EnumThreadDelegate lpfn, IntPtr lParam)
delegate IntPtr HookProc(int code, IntPtr wParam, ref MSG lParam)
delegate bool EnumThreadDelegate(IntPtr Hwnd, IntPtr lParam)