Присоединить окно к внешнему процессу - PullRequest
1 голос
/ 05 февраля 2012

Я пишу приложение на C #, которое должно прикрепить одно из своих окон к окну, принадлежащему другому процессу. Я попытался использовать функцию SetParent из Windows API, но она не работает. Есть ли способ сделать это?

    [DllImport("user32.dll", SetLastError = true)]
    private static extern int SetParent(int hWndChild, int hWndNewParent);

    private void AttachWindow(int newParent) {
    SetParent(this.Handle, newParent);
     }

1 Ответ

2 голосов
/ 05 февраля 2012

Во-первых, ваша декларация P / Invoke неверна. Ручки представлены IntPtr, а не Int32:

[DllImport("user32.dll", SetLastError = true)]
private static extern int SetParent(IntPtr hWndChild, IntPtr hWndNewParent);

Теперь, возможно, вам следует избегать "прикрепления" окна к другому процессу. Смотри эту ТАКУЮ ветку .

...