Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];

Вниз

Не работает FindWindow   Найти похожие ветки 

 
Vilux ©   (2004-03-17 07:58) [0]

Проблема в следуюшем. Есть приложение, хэндл которого ловится с помощью функции FindWindow, все работает. Проблема в том, что хэндл не находится из dll-ки, которая написана как сервис ISAPI/NSAPI. Т.е. dll-ка пускается IIS сервером при запросе вида http://localhost/mydll.dll
Она просто не видит окно приложения, т.е. возвращает хэндл = 0. Пробовал и FindWindow и FindWindowEx. Как быть? По идее я использую SendMessage, чтобы передать сообщение окну...  а теперь не могу передавать...


 
KSergey ©   (2004-03-17 08:08) [1]

off

Ну и жуткие же технологии для Web-сервиса... Запрется 100 пользователей (или 1000 - что еще хуже) что-то посмотреть, а там оказывается прога зачем-то какое-то окно ищет через FindWindow... А окно-то хоть точно имеет место быть?


 
CX   (2004-03-17 11:00) [2]

У меня похожая проблема. Не могу найти окна из сервиса! Давайте объединяться! Мой адрес: cx@ukr.net
Напишите, что Вы пробоволи и что у Вас получилось.


 
Игорь Шевченко ©   (2004-03-17 11:28) [3]


> У меня похожая проблема. Не могу найти окна из сервиса!


Разреши сервису взаимодействие с рабочим столом и будет тебе счастье. Даром.


 
Vilux ©   (2004-03-17 12:32) [4]

Да, я так и понял, что dll не видит рабочий стол. А вообще, пришлось пойти другим путем, без использования dll


 
Sur ©   (2004-03-17 15:59) [5]

хэндл окна и хэндл приложения по моему разные вещи


 
piople ©   (2004-03-18 06:58) [6]


> Vilux

НАФИГА ВАМ ИЗ СЕРВИСА ИСКАТЬ КАКОЕ-ТО ОКНО?????


 
CX   (2004-03-18 19:20) [7]

Vilux:

Можно делать харакири по ИД процесса. Тогда привязка будет к именифайла, что есть простейшим решением (переименууй файл - и сервис его не убьет). Более элегантным решением было бы вместе с ИД процесса проверять также и его окно (если таковое имеется). Ну и уж совсем замечательно было бы считать СРС процесса. Наиболее надёжно для идентификации, но и поморочиться надо. Ехе-шки не будеш считать раз в 2-3 секунды - слишком много ресурсов уйдет. Можно проверять только СРС заголовка из ехе.

Игорь Шевченко

Спасибо, мне уже посоветовали то же самое... :) А как определить состояние системы, т.е. можно-ли сервису уже выполнить ShellExecute, или ещё рано - система не загружена полностью?


 
Игорь Шевченко ©   (2004-03-19 10:46) [8]

CX   (18.03.04 19:20)


> А как определить состояние системы, т.е. можно-ли сервису
> уже выполнить ShellExecute, или ещё рано - система не загружена
> полностью?


Можно поймать сообщение TaskbarCreated, например. Или WM_USERCHANGED


 
Игорь Шевченко ©   (2004-03-19 10:49) [9]

Удалено модератором
Примечание: Дубль


 
_edWin ©   (2004-03-19 12:17) [10]

тебе собственно что нужно:хэндл окна или приложения.
ЭТО РАЗНЫЕ ВЕЩИ (совсем).
FindWindow ищет окно по имени класса и/или caption"а окна.


 
CX   (2004-03-22 11:18) [11]

Игорь Шевченко

А если проверять наличие процесса Explorer.exe?


 
Игорь Шевченко ©   (2004-03-23 11:51) [12]

CX   (22.03.04 11:18)

Путь с сообщением - официально документированный и рекомендованный.



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

Форум: "WinAPI";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.042 c
1-1083040171
фыва
2004-04-27 08:29
2004.05.16
Динамический массив


3-1082098026
чайник_
2004-04-16 10:47
2004.05.16
Обновление DBGrid автоматом


1-1083003545
zoltan
2004-04-26 22:19
2004.05.16
Plugin


11-1068963064
Ciber SLasH
2003-11-16 09:11
2004.05.16
Тормоза в PaintBox e


3-1082369091
}|{yk
2004-04-19 14:04
2004.05.16
Не подскажитте, почему такой вот запрос





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский