static extern bool EnumChildWindows(IntPtr hwndParent, Win32Callback lpEnumFunc, IntPtr lParam);
[return: MarshalAs(UnmanagedType.Bool)] // Return value is a 4-byte Win32 'BOOL' public static extern void EnumWindows(Win32Callback callback, IntPtr lParam);
public static extern bool EnumThreadWindows(int dwThreadId, Win32Callback lpfn, IntPtr lParam);
public static List<IntPtr> GetChildWindows(IntPtr hwndParent) { List<IntPtr> result = new List<IntPtr>(); GCHandle listHandle = GCHandle.Alloc(result); try { Win32Callback childProc = new Win32Callback(EnumWindow); Api_User32.EnumChildWindows(hwndParent, childProc, GCHandle.ToIntPtr(listHandle)); } finally { if (listHandle.IsAllocated) listHandle.Free(); } return result; }
public static extern bool EnumChildWindows(IntPtr parentHandle, Win32Callback callback, int lParam);
static extern bool EnumChildWindows(IntPtr Parent, Win32Callback Callback, IntPtr Param);
private static extern bool EnumWindows(Win32Callback callback, IntPtr lParam);
protected static extern bool EnumChildWindows(IntPtr parentHandle, Win32Callback callback, IntPtr lParam);
public static extern int EnumWindows(Win32Callback callback, IntPtr lParam);
protected static extern bool EnumWindows(Win32Callback enumProc, IntPtr lParam);
[return: MarshalAs(UnmanagedType.Bool)] // Return value is a 4-byte Win32 'BOOL' public static extern bool EnumChildWindows(IntPtr hwndParent, Win32Callback callback, IntPtr lParam);
public static extern IntPtr EnumChildWindows(IntPtr parentHandle, Win32Callback callback, IntPtr lParam);
private static extern bool EnumChildWindows(IntPtr parentHandle, Win32Callback callback, IntPtr lParam);
public static extern bool samba_create(StringBuilder p_ip, int port, StringBuilder p_id, StringBuilder p_password, StringBuilder p_local_dir, StringBuilder p_remote_dir, Win32Callback callback);
static WinData GetWindow(IntPtr parent, string className) { //List<IntPtr> result = new List<IntPtr>(); var result = new WinData { Class = className, Hwnd = IntPtr.Zero }; GCHandle listHandle = GCHandle.Alloc(result); try { var childProc = new Win32Callback(EnumWindow); EnumChildWindows(parent, childProc, GCHandle.ToIntPtr(listHandle)); return result; } finally { if (listHandle.IsAllocated) listHandle.Free(); } }