Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.09.12;
Скачать: CL | DM;

Вниз

Найти окно по имени и классу из сервиса   Найти похожие ветки 

 
9899100   (2009-04-19 23:58) [0]

Здравствуйте!
сделал небольшую программу, которая управляет другим приложением.Она, при появлении определенного окна, находит на нем кнопку и нажимает на неё, все работает.
Переделал свою программу в сервис.
Но теперь я не могу функцией EnumWindows и EnumChildWindows
найти требуемого окна. Скинул результат работы этих функций в файл и оказалось что они собирают всего несколько окон. т.е. все задачи которые запущены из эксплорера не попадают в эти пречисления.

Подскажите, как можно получить список всех окон всех процессов из сервиса?


 
Eraser ©   (2009-04-20 00:27) [1]

> [0] 9899100   (19.04.09 23:58)

сервис не годится для таких задач, если ддя xp это вполне решаемо, то в висте и выше - никак. без доп. процесса в каждой терм. сессии не обойтись.


 
9899100   (2009-04-20 00:31) [2]

жаль, было бы красиво :)


 
9899100   (2009-04-20 00:34) [3]

а функция CreateToolHelp32Snapshot ни как не поможет??
ведь она позволяет получить список задач и нитей
и выдет все что запущенно в данный момент
только до окон добраться не получается :(


 
Германн ©   (2009-04-20 01:28) [4]


> 9899100   (19.04.09 23:58)
>
> Здравствуйте!
> сделал небольшую программу, которая управляет другим приложением.
> Она, при появлении определенного окна, находит на нем кнопку
> и нажимает на неё, все работает.
> Переделал свою программу в сервис.
> Но теперь я не могу


> жаль, было бы красиво :)

Странный однако сервис должен был бы быть красивым :)


 
9899100   (2009-04-20 01:43) [5]


> Странный однако сервис должен был бы быть красивым :)

ничего странного я в этом не вижу
но могу для Вас заменить слово "красивый" на удобный

красивый, это когда нет ничего лишнего, как например иконка торчащая в трее, который и так замусорен
а так работает себе сервис никому не мешает


 
Германн ©   (2009-04-20 02:07) [6]


> 9899100   (20.04.09 01:43) [5]
>
>
> > Странный однако сервис должен был бы быть красивым :)
>
> ничего странного я в этом не вижу

Странным мне показалось желание сделать службу, которая только и делает, что отыскивает окно некоего приложения с некоей кнопкой и эмулирует нажатие на ту кнопку.

Может реальный пример представишь, в котором нет ничего "странного".


 
9899100   (2009-04-20 07:53) [7]

реальный пример
если ты работал когданибудь в банке, отправлял платежи в ЦБ
то реальный пример видел не однократно, когда надо нажать на "100" кнопок в "20" программах причем на разных компах, а делать каждые 20 минут
хотябы на 10 "телодвижений меньше" это очень удобно

реальный на 100%


 
Anatoly Podgoretsky ©   (2009-04-20 08:59) [8]

Не хотел бы я держать деньги в этом банке.


 
ford   (2009-04-20 09:59) [9]


> Не хотел бы я держать деньги в этом банке.

Если бы ты видел программы которые делает ЦБ (центральный банк) ты бы ужаснулся так, что неделю не мог бы прийти в себя от шока
типа "под каким градусом и какой ногой можно было писать такие программы"

а вот автоматизация процессов производства, пусть это банк или еще что-то
тут я полностью с тобой не согласен
ну если поставленны такие условия работы
1. выгрузить документы на машине №1
2. подписать документы на машине №2
3. отправить документы в ЦБ машина №3
и пр этом они не могут быть в сети (правила ЦБ)
чтобы например подписать и зашифровать файл, надо открыть три окна и в каждом тупо нажать на пару кнопок
понимаешь?? "ТУПО" нажать на кнопку!!!
и что тут криминального или плохого если я нажму на кнопку не сам а программа???!!!
ведь компьютеры для того и создавались чтобы автоматизировать рутинные процессы
но ЦБ этого не знает  ;)

но это лирика :)
вот лучше бы подсказал как все таки получить окошки из сервиса


 
Anatoly Podgoretsky ©   (2009-04-20 11:14) [10]

> ford  (20.04.2009 9:59:09)  [9]

> вот лучше бы подсказал как

Что бы меня прокляли другие пользователи вашего банка.


 
Игорь Шевченко ©   (2009-04-20 15:45) [11]


> Подскажите, как можно получить список всех окон всех процессов
> из сервиса?


1. настроить сервис на взаимодействие с рабочим столом.
2. отказаться от сервиса


 
clickmaker ©   (2009-04-20 15:57) [12]

> как все таки получить окошки из сервиса

EnumDesktopWindows ?


 
Игорь Шевченко ©   (2009-04-20 17:38) [13]

clickmaker ©   (20.04.09 15:57) [12]

Фигу. У сервисов мало того, что свой Desktop, он еще и в своей WindowStation


 
clickmaker ©   (2009-04-20 17:40) [14]

> [13] Игорь Шевченко ©   (20.04.09 17:38)
> clickmaker ©   (20.04.09 15:57) [12]
>
> Фигу. У сервисов мало того, что свой Desktop, он еще и в
> своей WindowStation

в курсе. Но чужой десктоп можно открыть.
Правда, не в курсе, нужна ли для этого сервису интерактивность


 
Игорь Шевченко ©   (2009-04-20 18:08) [15]


> Но чужой десктоп можно открыть.


предварительно присоединив к себе чужой WindowStation...


 
Eraser ©   (2009-04-20 18:41) [16]

> [13] Игорь Шевченко ©   (20.04.09 17:38)


> У сервисов мало того, что свой Desktop, он еще и в своей
> WindowStation

у сервисов мало того, что своя WindowStation, еще и своя терм. сессия.


 
Игорь Шевченко ©   (2009-04-20 19:02) [17]


> еще и своя терм. сессия.


Разве не консольная ?


 
Eraser ©   (2009-04-20 19:08) [18]

> [17] Игорь Шевченко ©   (20.04.09 19:02)


> Разве не консольная ?

нулевая. в xp - та же, что и у первого залогиневшегося юзера. в висте даже для первого залогиневшегося юзера создается отдельная терм. сессия.


 
Игорь Шевченко ©   (2009-04-20 19:14) [19]


> нулевая.


в XP она же консольная, про Висту ничего не могу сказать - не видел, не знаю, не устанавливал, не испытываю желание устанавливать


 
Eraser ©   (2009-04-20 19:16) [20]

> [19] Игорь Шевченко ©   (20.04.09 19:14)


> в XP она же консольная

верно, только если выключен FUS.

> про Висту ничего не могу сказать - не видел, не знаю, не
> устанавливал, не испытываю желание устанавливать

беда в том, что юзеры то устанавливают ) и win7 будут устанавливать еще больше :-)


 
Slym ©   (2009-04-20 19:21) [21]

ЦБшные программы все на файлообмене построены, с возможностью слежения за каталогом...
Вы сударь просто не настроили ихний (и вправду дебильный) дотнетовский клиент-банк... его можно перевести в режим сканирования каталога с вптоподписанием и упаковкой в конверт...
каталоги выхода с этапа указывать на вход другого этапа...
остается только сформировать платежка согласно ихней xml схемы и положить во вход первого этапа, н выходе последнего готовый конверт для транспортной машины



Страницы: 1 вся ветка

Текущий архив: 2010.09.12;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.011 c
2-1276392661
DROWSY
2010-06-13 05:31
2010.09.12
Если TIBDataSet - набор из нескольких связанных таблиц...


15-1276585131
brother
2010-06-15 10:58
2010.09.12
Любителям zx-spectrumа: видео...


2-1276964759
DiamondeX
2010-06-19 20:25
2010.09.12
Режим выбора пользователя


2-1276375219
AKE
2010-06-13 00:40
2010.09.12
Как получить координаты всех точек?


2-1276668024
DROWSY
2010-06-16 10:00
2010.09.12
Access violation at address 00356273 in module designide60.bpl .