Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Доступ к выполняющейся программе. (http://forum.oszone.net/showthread.php?t=130162)

Afon 28-01-2009 15:08 1022353

Доступ к выполняющейся программе.
 
Доброе время суток.


Помогите пожалуйста разобраться со следующей проблемой:

Есть программа, которая при нажатии на кнопку открывает файл рисунка из указанной папки. Файл из папки программа выбирает функцией рандомайзом. Мне надо написать службу в C++ Builder, которая будет следить за этой программой и в тот момент когда она откроет файл рисунка эта служба определила бы имя открываемого файла и занесла это имя в текстовый файл.


Заранее спасибо.

Admiral 28-01-2009 19:23 1022641

Afon, решение, от простого к достаточно сложному, зависит от того - как выглядит данная программа, точнее как кроме того, что видно собственно какое изображение оно загрузило, прога сигнализирует о последнем.
К примеру MS Paint в заголовок окна добавляет имя файла собственно перед самим - Paint. Отловить открытое подобным образом поможет Апи функция FindWindow
Ответить стоит так же на вопрос: как быть если запущенно несколько экземпляров данного приложения - информировать о всех открытых или первом попавшемся? Или такая ситуация не рассматривается?
Да кстати под сервисом подразумевается собственно сервис или безоконное приложение?

pva 30-01-2009 14:15 1024455

если из этой папки больше рисунков никто не выбирает, то можно воспользоваться функцией ReadDirectoryChangesW, которая кроме прочего выдаёт список файлов, к которым произведён доступ.
А ещё можно в сторону аудита подумать, тогда ничего писать не надо.


Время: 14:19.

Время: 14:19.
© OSzone.net 2001-