Инструмент для запроса информации о положении окна?

1

Есть ли программа, которая может перечислить мне «главное» положение окна, учитывая, что я знаю только PID; или что-то вроде положения окна? (пожалуйста, не стесняйтесь исправлять неправильные предположения.) Я нахожусь на окнах.

РЕДАКТИРОВАТЬ Например, у меня есть PID запущенного исполняемого файла. И я знаю, что у него есть окно, но оно вышло за пределы экрана, и я не знаю HWND. Хотя, конечно, есть способы вывести его на экран, я хотел бы знать, в первую очередь, это положение окна.

n611x007
источник
пожалуйста, объясните понижающее голосование, если можете, чтобы я мог улучшить свое спокойствие! :) Спасибо!
n611x007
Is there a program that can in a 'refreshing manner' ("real-time") list me a pid's main window position, or something like that? Это должно быть автообновление? For example I have a pid I know it has a window but it went off-screen. While surely there are techniques to bring it on-screen, I would like to know it's position first. ПИД ? PID - это идентификатор процесса, который предназначен для программы, а не для окна. Окно будет иметь HWND, который является уникальной ручкой для него. Программа может иметь несколько окон.
Synetech
@ Synetech да, я имею в виду, что я не буду знать hwnd, потому что мне также не хватает способов их запросить. Я знаю только PID, поскольку он указан в списке задач. Независимо от вашего ответа решает обе мои проблемы. :) Ну, автообновление не так важно, в конце концов, я могу сделать повторные запросы, вы правы, я буду редактировать мой q.
n611x007

Ответы:

2

Вы можете использовать WinSpy ++ . Если у вас есть дескриптор (HWND) для окна (в отличие от PID программы ), то это будет проще.

  1. Запустите WinSpy ++
  2. Найдите нужное окно:
    • С HWND:
      1. Введите HWND окна в Handleполе
      2. Нажмите Enter
    • Без HWND:
      1. Разверните его окно, чтобы показать список окон
      2. Найдите программу, которой принадлежит отсутствующее окно
      3. Разверните ветку программы
      4. Найдите недостающее окно в подветви
  3. Посмотрите на Rectangleполе слева
  4. Нажмите [Refresh]кнопку, если / когда пожелаете
  5. Нажмите […]кнопку, чтобы переместить окно
Synetech
источник
1
Рад, что все получилось. Кроме того , если отсутствует окно , случается, есть кнопки на панели задач , и вы просто хотите , чтобы получить его обратно на экране, то вы можете нажать на кнопку на панели задач, нажмите Alt+Space, M, ап (у) клавиши со стрелками, а затем переместите мышь. Это мгновенно вернется на экран. (В качестве альтернативы вы можете щелкнуть правой кнопкой мыши кнопку на панели задач или Alt-Tabна нее перед ее перемещением.)
Synetech
Спасибо, удобно иметь эту информацию близко здесь! :) Я знал этот трюк однажды, но всегда забывал. (Однако на этот раз я также сначала искал позицию, чтобы помочь мне понять, что произошло в моем конкретном приложении, прежде чем оно ушло за пределы экрана по направлению + расстояние.)
n611x007