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

Вниз

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

 
Pank   (2004-03-18 13:31) [0]

Привет мастерам.
Беда такая, есть 2 приложения, первое чужое, второе моё. Одно пишет лог, второе этот лог читает. Иногда оба приложения делают это одновременно, при этом первое отказывается дальше работать.
Вопрос: Как во втором проверять запущено ли первое? Если нет, то его надо запустить.
Заранее всем благодарен за ответы.


 
Digitman ©   (2004-03-18 13:47) [1]

являются ли оба приложения GUI-приложениями ?


 
Pank   (2004-03-18 13:48) [2]

А это что?


 
Digitman ©   (2004-03-18 13:59) [3]

охх..
бедные пальцы мои) ... опять на них объяснять придется)) ...

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


 
Pank   (2004-03-18 14:09) [4]

оба оконные, оба с крестиками, оба запускаются мною


 
TUser ©   (2004-03-18 14:09) [5]

gui - graphics user integface, или п-русски - нарисованная интерморда юзверя.


 
Digitman ©   (2004-03-18 14:15) [6]


> Pank   (18.03.04 14:09) [4]


ок ... поехали дальше ..


> Одно пишет лог, второе этот лог читает


о чем идет речь ? что есть "лог" ? просто некий файл с каким-то текстом ?


 
Pank   (2004-03-18 14:26) [7]

Лог-текст, когда второе приложение его читает, первое при попытке записи вылетает. Надо проверить запущено первое приложение или нет, если нет то запустить.


 
TUser ©   (2004-03-18 14:27) [8]


> Вопрос: Как во втором проверять запущено ли первое? Если нет, то его надо запустить. Заранее всем благодарен за ответы.

Надо вызвать FindWindow, если не найдено - то ShellExecute or CreateProcess.


 
npAKTuk ©   (2004-03-18 14:30) [9]

используй API функцию по нахождению процесса. в местном FAQ все доступно описанно.


 
Digitman ©   (2004-03-18 14:43) [10]

ерунда какая-то ...


> когда второе приложение его читает, первое при попытке записи
> вылетает


и в то же время


> Надо проверить запущено первое приложение или нет, если
> нет то запустить


.. чтобы оно, первое, гарантированно "вылетело" ... потому что второе приложение уже работает (читает лог-файл), при этом еще и пытается запустить первое приложение, которое тут же бросится писать в лог-файл, который в этот момент уже открыт для чтения

может, ерундой не заниматься ? с запуском ? строго наоборот - второму приложению следует УБЕДИТЬСЯ, что первое приложение либо не запущено (тогда и лог-файла нет, и читать-то нечего) либо определить факт работы первого приложения и дождаться его завершения, прежде чем лезть в лог-файл ..


 
Yuri Btr ©   (2004-03-18 15:00) [11]

А может просто второму приложению открывать лог файл только для чтения?
И всё...



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

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

Наверх




Память: 0.49 MB
Время: 0.185 c
3-1078902392
HeoGtan
2004-03-10 10:06
2004.04.04
Как (для BDE) - определить в БД [PARADOX]:


1-1079608292
argom
2004-03-18 14:11
2004.04.04
Как в моей проге отследить команду "Свернуть все окна"


3-1078388326
Olegka
2004-03-04 11:18
2004.04.04
Calculated Fields


8-1070889136
kopcap
2003-12-08 16:12
2004.04.04
NURBS и OpenGL


3-1078859648
Anarki
2004-03-09 22:14
2004.04.04
Где в ADODataSet задать имя таблицы?