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

Вниз

Как узнать запушена ли программа написанная на winapi   Найти похожие ветки 

 
dream   (2003-11-06 11:26) [0]

Простые программы можно найти так FindWindow("TxGg_cl",nil)
Но это те программы которые имеют окна , а если программа не имеет окна ? написанна на winapi .

Подскажите пожайлуста


 
han-bratan   (2003-11-06 11:29) [1]

нНужно перечислить все процессы в системе, получить имя файла который вызвал этот процесс, и сравнить имя икомой проги со всеми именами файлов-процессов уже запущенных.


 
dream   (2003-11-06 11:31) [2]

> han-bratan

А попроще никак нельзя ? Я в пришципе могу так сделать но считаю что это не выход

Толи код if FindWindow("TxGg_cl",nil) = 0 then

либо твоим советом код займёт 10 - 20 строчек + потеряет функциональность !


 
Dima_dvp ©   (2003-11-06 11:46) [3]

FindWindow переводиться найти окно - сам подумай возможно ли найти окно которого нет.....


 
dream   (2003-11-06 11:49) [4]

> Dima_dvp

Это то я знаю ! а есть ли что то наподобии Findproces ?


 
Vorobyev Sergey ©   (2003-11-06 11:55) [5]

Давай просто логически подумаем:
Программа это что - это процесс, и ничего другого она представлять не может.
Значит надо искать среди процессов..
Т.к. FindProcess вроде бы не существует, то только с помощью методики от [1] han-bratan (06.11.03 11:29)


> Я в пришципе могу так сделать но считаю что это не выход
>

Если сможешь, сделай.. Что значит не выход? Это и есть выход..
Медленно, не думаю..


 
Fiend ©   (2003-11-06 12:10) [6]

Пользуй Мьютекс.


 
dream   (2003-11-06 12:15) [7]

> Fiend

Это мысль ! но Мьютекс не надёжен ! сам не раз убеждался


 
Юрий Зотов ©   (2003-11-06 12:17) [8]

> Fiend © (06.11.03 12:10) [6]

И как же его в этой ситуации пользовать?
И для чего?
И что он даст?
И как это поможет решить задачу?
И для чего вводить людей в заблуждение?


 
Юрий Зотов ©   (2003-11-06 12:19) [9]

> dream (06.11.03 12:15) [7]

> Это мысль!
Безусловно. Но не имеющая к вопросу никакого отношения.

> но Мьютекс не надёжен ! сам не раз убеждался
Есть такой драйвер - руки.sys. И иногда он бывает кривым. Но мьютексы в этом не виноваты.


 
Fiend ©   (2003-11-06 12:27) [10]

То Юрий Зотов © (06.11.03 12:17) [8]
Кто мешает при запуске софта первым делом проверять существует ли в системе Мьютекс с таким то имененм, где имя какая либо уникальная строка. Если его нет, то продолжаем загрузку. Иначе прерываемся.
Что сложного или неприменимого???


 
Юрий Зотов ©   (2003-11-06 12:33) [11]

> Fiend © (06.11.03 12:27) [10]

Никто не мешает. Это стандартный способ блокировки повторного запуска СВОЕЙ программы.

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


 
Fiend ©   (2003-11-06 12:35) [12]

То Юрий Зотов © (06.11.03 12:33) [11]
Ну я так понял из вопроса что софт написан автором же, посему вставить в него кусок кода несложно. К тому же софт, опять же насколько я понял, должен блокировать повторный запуск себя а не кого то другого.
или я неверно понял вопрос???


 
dream   (2003-11-06 12:37) [13]

> Юрий Зотов

> Разве все программы обязаны создавать мьютексы?

Программа без окон тожк моя разработка , так что можно попробывать и с Мьютексами


 
Юрий Зотов ©   (2003-11-06 12:38) [14]

> Fiend © (06.11.03 12:35) [12]

Я не знаю, верно ли Вы поняли вопрос, или неверно. Автор этого не уточняет. Но сам вопрос звучит так: "Как узнать запушена ли программа написанная на winapi". Здесь нет ни слова о том, что программа именно своя и что надо блокировать ее повторный запуск. Не прозвучало этого и в обсуждении.


 
Fiend ©   (2003-11-06 12:39) [15]

То dream (06.11.03 12:37) [13]
значит я всё же правильно понял вопрос. В чём тогда загвоздка? Примеров валом


 
Fiend ©   (2003-11-06 12:40) [16]

То Юрий Зотов © (06.11.03 12:38) [14]
он всё же признался в деталях ;)
(
> dream (06.11.03 12:37) [13]
)


 
dream   (2003-11-06 12:41) [17]

нет просто без окон та программа которая делает обновление основного EXE файла , тут же есть сервис который проверяет находиться ли в памяти главная программа EXE и при её отсутствии загружает её в память , но если проводить обновление то Основная программа будет выключена ( то есть будет обновляться ) и если в это время её запустит сервис то все усилия по обнавлению сведуться на нет ! так что я хотел реализовать в сервисе проверку работает ли обновляющая программа ( то есть прога на winapi ) !

Вот так


 
Юрий Зотов ©   (2003-11-06 12:41) [18]

> dream (06.11.03 12:37) [13]

Тогда, во-первых, задавайте вопросы так, чтобы Вас правильно и ТОЧНО поняли. Во-вторых, можно использовать не только мьютексы, а вообще любые объекты ядра. В-третьих, см. сюда:
http://www.delphikingdom.ru/helloworld/samples_win.htm#link11


 
dream   (2003-11-06 12:43) [19]

Всем спасибо ! буду пробывать



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

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

Наверх




Память: 0.51 MB
Время: 0.037 c
8-63260
ChekhlatyAndrew
2003-09-15 20:24
2004.01.20
захват изображения с WEB - камеры


14-63370
Вася Добрый
2003-12-29 12:18
2004.01.20
Как сделать UDF


6-63282
nik_
2003-11-18 08:33
2004.01.20
Socket-ы. Проверка соединения.


1-63120
MakNik
2004-01-05 14:43
2004.01.20
Сколько дней и выходных в году и в определенном месяце?


1-63056
selena
2004-01-09 09:05
2004.01.20
Таймер