| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Как получить имя сфокусированого окна в desktop |
| Автор: 56illusion 19.5.2010, 19:07 |
| Всем привет! Наверно по имени темы плохо понятно в чём мне требуется помощь. Пишу программу , одна метода должна узнавать аппликацию\окно сфокусированное в дынный момент. например запускаю я свою программку а потом продолжаю работать, программка должна записывать в тхт файл имя окна на котором фокус Пол дня искать в мсдн и по гуглу искал... пробовал искать в классе process.. типо получить имя сфокусированного процеса... помогите программисты |
| Автор: 56illusion 19.5.2010, 21:44 |
| люди помогите плиз, нужно узнать какая программи\ приложение в фокусе, тоесть чем пользуеться пользователь.. (icq,msn,nero,gta......) |
| Автор: 56illusion 19.5.2010, 22:31 |
| нарыл в гугле что нужно получить handle активного окна другого приложения. а потом воспользоваться методом GetWindowText(). как имеено ето написать? |
| Автор: jonie 20.5.2010, 01:16 |
| GetForegroundWindow (http://msdn.microsoft.com/en-us/library/ms633505%28VS.85%29.aspx) вестимо надо использовать .. она даст вам HWND окна, которое держит фокус в текущий момент... затем вам надо найти окно ввода используя EnumWindows (http://msdn.microsoft.com/en-us/library/ms633497%28VS.85%29.aspx) GetWindow http://msdn.microsoft.com/en-us/library/ms633515%28VS.85%29.aspx ну и далее что вы описали... TODO: 1) почитать PInvoke.net насчет втягивания в C# этих функций 2) прочитать в MSDN про безопасность (я дословно не помню но возможно только в вашем процессе можно такие вещи делать, тогда надо искать замены в виде менее враждебных к этому параметру функций в msdn). 3) profit) |