Вопрос

существует программное обеспечение, которое вызывает метод в моей C # dll.В этом методе dll мне нужно иметь дескриптор окна программы / window, который вызвал мою dll.

как получить этот "дескриптор вызывающего окна"?

Спасибо!

Это было полезно?

Решение

Это может вернуть дескриптор главного окна.

System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle

Насколько я знаю, нет никакого способа получить конкретное окно, потому что это не более чем объект формы.Но класс формы обладает свойством Handle.Вы можете передать его в качестве аргумента при вызовах метода dll.

Другие советы

Ты не можешь:windows не вызывает методы, code вызывает методы.

В идеале вам следует добавить параметр дескриптора окна к вашему методу.Если это абсолютно невозможно, вы могли бы использовать, скажем, GetActiveWindow Функция API для активации окна в текущем потоке.Это не гарантированно сработает;может быть, там нет открытых окон.

Для чего вам нужен дескриптор окна?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top