![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Определение запуска приложения [D7, WinXP]
Rules © (2006-06-14 23:26:00)Как определить моему приложению о запуске любых других приложений, желательно без hook`ов! Заранее спасибо!
inri13666 (2006-06-15 18:20:00) [1]Удалено модератором
Примечание: Offtopic
homm (2006-06-15 18:08:00) [2]2inri13666
> Как определить моему приложению о запуске любых другихприложений
Ihor Osov'yak (2006-06-15 18:07:00) [3]inri13666, маю все основания предположить, что и умнее, и мудрее, и поопытнее чем ты. Хотя, в принципе, не исключаю возможной ошибки в этом утверждении...
Относительно "по сабжу".. Обратитесь к знающему русский язык на предмет растолкования различий между понятиями "во время того" и "после того"...
Относительно "мне как отследить" - откройте топик, сформулируйте вопрос, может кто будет иметь время и желание и бекграунд для ответа по существу.
Удачи.
inri13666 (2006-06-15 18:02:00) [4]Удалено модератором
Примечание: Offtopic
Ihor Osov'yak (2006-06-15 17:58:00) [5]inri13666, извини за мой французкий, но может перед тем что-то там бросать, не имеющее отношение к сабжу, для начала бы с сервисами в XP разобрался, и в чем отличие или неотличие от сервисом в W2K.
inri13666 (2006-06-15 17:25:00) [6]или можно воспользавоться FINDWindow('ClassName','WindowName')
inri13666 (2006-06-15 16:47:00) [7]В Uses надо добавить tlhelp32
Вроде Вот Так:
{Возвращает True если найдена хоть одна копия проги}
{ Имя EXE-Файла}
function ProcID1(name:string):boolean;
var
handler:THandle;
data:TProcessEntry32;
e:byte;
begin
b:=0;
handler:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if Process32First(handler,data) then
while Process32Next(handler,data) do
if UpperCase(data.szExeFile)=UpperCase(name)
then
begin
b:=b+1; //Count of Applications
ProcId1:=True; //App alredy running
end
else ProcId1:=False; //App alredy not running
CloseHandle(handler);
end;
Eraser (2006-06-14 23:51:00) [8]> Rules (14.06.06 23:26)
если просто для статистики, то лучше время от времени проверять список процессов, если же необходимо определить точно момент запуска опр. программы, то [1]
Ihor Osov'yak (2006-06-14 23:42:00) [9]в общем случае решаемо в ring 0, причем для W9x и NT+ подходы различны.
на user level, имхо, гарантированого решения нет.