3 / 3 / 3
Регистрация: 26.09.2009
Сообщений: 93

Как узнать handle системного окна "Запуск программы" ("Выполнить")

17.01.2012, 21:46. Показов 2260. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как узнать handle открытого ранее системного окна "Запуск программы", (открываемого по кнопке "Пуск"->"Выполнить...")?
Необходимо программно передавать фокус этому окну.

P.S. Это окно я программно открываю командой:
C++
1
SendMessage(FindWindow("Shell_TrayWnd", NULL), WM_COMMAND, 401, 0);
Если не верно поправьте, пожалуйста.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.01.2012, 21:46
Ответы с готовыми решениями:

Как узнать Handle у окна?
Задачка простая, есть название окна, допустим "Мой компьютер". Код выглядит так: FindWindow('TForm1', 'application.title'); ...

Как узнать Handle окна
Суть в названии темы. Как достать handle окна wpf, чтобы передать его в WinAPI функцию ?

Как узнать handle окна по ID процесса
Коллеги, подскажите, что делать. Ситуация в двух словах такая: нужно сделать скриншоты окна программы. Я пока разобрался, как найти handle...

3
Заблокирован
17.01.2012, 22:02
Алексей71, хэндл окна можно узнать по его заголовку.
Вот пример
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using System.Runtime.InteropServices;
 
 public const int WM_SYSCOMMAND = 0x0112;
 public const int SC_CLOSE = 0xF060;
 
 [DllImport("user32.dll")]
 public static extern int FindWindow(
     string lpClassName, // class name 
     string lpWindowName // window name 
 );
 
 [DllImport("user32.dll")]
 public static extern int SendMessage(
     int hWnd, // handle to destination window 
     uint Msg, // message 
     int wParam, // first message parameter 
     int lParam // second message parameter 
 ); 
 private void button1_Click(object sender, EventArgs e)
        {
            // Determine the handle to the Application window. 
             int iHandle = FindWindow(null, "Калькулятор Плюс");
     
            // Post a message to Application to end its existence. 
            SendMessage(iHandle, WM_SYSCOMMAND,
                SC_CLOSE, 0);
           
        }
0
3 / 3 / 3
Регистрация: 26.09.2009
Сообщений: 93
17.01.2012, 22:19  [ТС]
Спасибо, правда, заголовок окна "Запуск программы", может быть разным в различных версиях Windows (например в английской). Хотелось бы знать имя класса этого окна.
0
Заблокирован
17.01.2012, 22:22
Да. В Семерке вообще этого окна нет. Просто набирается в текстовое поле.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.01.2012, 22:22
Помогаю со студенческими работами здесь

Как узнать ID процесса (PID) по дескриптору окна (Handle)?
АП. Интересует как узнать PID по Handle.

Как узнать handle окна к которому подключена dll
Ставлю глобальных хук с помощью dll ( SetWindowsHookEx(WH_CBT, @WindowProc, HInstance, 0) ), мне нужно узнать handle окна к которому эта...

Как, зная Handle окна программы, определить имя EXE
Добрый вечер, вот такая проблема: нужно найти имя активного окна. Handle узнаётся с помощью GetForegroundWindow(), а как действовать...

Можно ли запретить запуск окна, зная его Handle
Собственно вот и вопрос да и еще если можно вообще запретить запуск этой проги или её хранение, или еще как-нибудь, что-нибудь в этом роде?

Нужно узнать имя и путь исполняемого файла, имея handle его окна
Нужно узнать имя и путь исполняемого файла, имея handle его окна. Когда используешь handle текущего окна - всё работает: long...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Как использовать OAuth2 со Spring Security в Java
Javaican 14.05.2025
Протокол OAuth2 часто путают с механизмами аутентификации, хотя по сути это протокол авторизации. Представьте, что вместо передачи ключей от всего дома вашему другу, который пришёл полить цветы, вы. . .
Анализ текста на Python с NLTK и Spacy
AI_Generated 14.05.2025
NLTK, старожил в мире обработки естественного языка на Python, содержит богатейшую коллекцию алгоритмов и готовых моделей. Эта библиотека отлично подходит для образовательных целей и. . .
Реализация DI в PHP
Jason-Webb 13.05.2025
Когда я начинал писать свой первый крупный PHP-проект, моя архитектура напоминала запутаный клубок спагетти. Классы создавали другие классы внутри себя, зависимости жостко прописывались в коде, а о. . .
Обработка изображений в реальном времени на C# с OpenCV
stackOverflow 13.05.2025
Объединение библиотеки компьютерного зрения OpenCV с современным языком программирования C# создаёт симбиоз, который открывает доступ к впечатляющему набору возможностей. Ключевое преимущество этого. . .
POCO, ACE, Loki и другие продвинутые C++ библиотеки
NullReferenced 13.05.2025
В C++ разработки существует такое обилие библиотек, что порой кажется, будто ты заблудился в дремучем лесу. И среди этого многообразия POCO (Portable Components) – как маяк для тех, кто ищет. . .
Паттерны проектирования GoF на C#
UnmanagedCoder 13.05.2025
Вы наверняка сталкивались с ситуациями, когда код разрастается до неприличных размеров, а его поддержка становится настоящим испытанием. Именно в такие моменты на помощь приходят паттерны Gang of. . .
Создаем CLI приложение на Python с Prompt Toolkit
py-thonny 13.05.2025
Современные командные интерфейсы давно перестали быть черно-белыми текстовыми программами, которые многие помнят по старым операционным системам. CLI сегодня – это мощные, интуитивные и даже. . .
Конвейеры ETL с Apache Airflow и Python
AI_Generated 13.05.2025
ETL-конвейеры – это набор процессов, отвечающих за извлечение данных из различных источников (Extract), их преобразование в нужный формат (Transform) и загрузку в целевое хранилище (Load). . . .
Выполнение асинхронных задач в Python с asyncio
py-thonny 12.05.2025
Современный мир программирования похож на оживлённый мегаполис – тысячи процессов одновременно требуют внимания, ресурсов и времени. В этих джунглях операций возникают ситуации, когда программа. . .
Работа с gRPC сервисами на C#
UnmanagedCoder 12.05.2025
gRPC (Google Remote Procedure Call) — открытый высокопроизводительный RPC-фреймворк, изначально разработанный компанией Google. Он отличается от традиционых REST-сервисов как минимум тем, что. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru