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

Вниз

Как можно отлавливать запускаемые процессы?   Найти похожие ветки 

 
SkySpeed   (2006-11-10 19:03) [0]

Собственно, сабж :)

P.S.: получение запускаемого приложения путём сравнения списка текущих процессов не предлагать (это самый лёгкий выход из положения)


 
Ketmar ©   (2006-11-10 19:09) [1]

WMI


 
SkySpeed   (2006-11-10 19:27) [2]

Цитата: (http://soft32.ru/delphi.shtml?topic=os&title=wmi_use)

Подготовка.

Итак, начнём с того, что нам необходимо сделать перед тем, как непосредственно начать использовать мощь технологии WMI в своих программах:
установить систему Windows 2000 или NT 4.0 SP4 и выше;
установить Microsoft Internet Explorer (IE) 5.0 и выше;
установить WMI SDK;
После того, как вы установили WMI SDK, импортируйте следующие библиотеки типов:
Active DS Type Library (Version 1.0)
Microsoft WMI Scripting v1.1 Library (Version 1.1)
Отлично, теперь в палитре компонентов у вас появились новые элементы, которые мы и будем в дальнейшем использовать.


На WindowsXP не идёт код, данной в этой статье, и WbemScripting_TLB не подключается


 
Орион ©   (2006-11-10 19:40) [3]

> [0] SkySpeed   (10.11.06 19:03)


> Как можно отлавливать запускаемые процессы?

Перехвать NtCreateProcess?


 
Ketmar ©   (2006-11-10 19:42) [4]

>[2] SkySpeed 10-Nov-2006, 19:27
>На WindowsXP не идёт код, данной в этой статье, и
>WbemScripting_TLB не подключается
так это... предполагается, что в процессе кроме copy/paste ещё и мозг участвует...

>[3] Орион(c) 10-Nov-2006, 19:40
>Перехвать NtCreateProcess?
наивный.


 
Орион ©   (2006-11-10 19:48) [5]

> [4] Ketmar ©   (10.11.06 19:42)

NtCreateSection? :)


 
Ketmar ©   (2006-11-10 19:48) [6]

>[5] Орион(c) 10-Nov-2006, 19:48
>NtCreateSection? :)
дважды наивный. %-)


 
SkySpeed   (2006-11-10 19:56) [7]


> Ketmar ©   (10.11.06 19:42) [4]
> >[2] SkySpeed 10-Nov-2006, 19:27
> >На WindowsXP не идёт код, данной в этой статье, и
> >WbemScripting_TLB не подключается
> так это... предполагается, что в процессе кроме copy/paste
> ещё и мозг участвует...
>
> >[3] Орион(c) 10-Nov-2006, 19:40
> >Перехвать NtCreateProcess?
> наивный.

Так ты разве не можешь подсказать - что необходимо подключить для работы в ВинИкспи кода из той статьи?


 
Орион ©   (2006-11-10 20:01) [8]

> [7] SkySpeed   (10.11.06 19:56)

информация особой важнсти. Военная тактическая разработка от Ketmar"a, за разглашение - смертная казнь через отлучение от компьютера :)


 
Ketmar ©   (2006-11-10 20:29) [9]

>[7] SkySpeed 10-Nov-2006, 19:56
>Так ты разве не можешь подсказать - что необходимо
>подключить для работы в ВинИкспи кода из той статьи?
и не собирался.


 
SkySpeed   (2006-11-10 20:53) [10]

С приходом Ketmar"a, delphimaster превратился в нечто особенное...


 
Ketmar ©   (2006-11-10 21:01) [11]

>[10] SkySpeed 10-Nov-2006, 20:53
>С приходом Ketmar"a, delphimaster превратился в нечто
>особенное...
учитывая, что Кэтмар тут обитает примерно с 2k/2k1, дельфимастер изначально был чем-то особенным.


 
Eraser ©   (2006-11-10 21:30) [12]

> [2] SkySpeed   (10.11.06 19:27)


> На WindowsXP не идёт код, данной в этой статье, и WbemScripting_TLB
> не подключается

идет и подключается.
вот почти то, что тебе нужно http://kladovka.net.ru/index.cgi?pid=dir&rid=2&ppn=4 (см. processwatcher.zip).


 
SkySpeed   (2006-11-10 22:46) [13]


> Eraser ©   (10.11.06 21:30) [12]
> > [2] SkySpeed   (10.11.06 19:27)
>
>
> > На WindowsXP не идёт код, данной в этой статье, и WbemScripting_TLB
>
> > не подключается
>
> идет и подключается.
> вот почти то, что тебе нужно http://kladovka.net.ru/index.
> cgi?pid=dir&rid=2&ppn=4 (см. processwatcher.zip).

Спасибо за ссылку, только надо WMI SDK ещё найти и скачать, в яндексе и в гугле ничего сущего не нашёл...

Может подкинешь ссылку?


 
Eraser ©   (2006-11-10 22:54) [14]

> [13] SkySpeed   (10.11.06 22:46)


> только надо WMI SDK ещё найти и скачать

ничего не нужно искать и скачивать, все нужные ActiveX элементы уже есть в системе. Просто импортируй их в VCL.


 
SkySpeed   (2006-11-10 23:43) [15]

Издержка из Readme.txt:


ProcessWatcher – позволяет отслеживать запуск и остановку процессов в системе без перехвата системных функций. Работа программы основана на использовании механизма WMI.

Для компиляции примера необходимо импортировать и установить некоторые библиотеки типов.

Перед тем, как непосредственно начать использовать мощь технологии WMI в своих программах:
установить систему Windows 2000/XP/2003/Vista или NT 4.0 SP4 и выше;
установить Microsoft Internet Explorer (IE) 5.0 и выше;
установить WMI SDK;
После того, как вы установили WMI SDK, импортируйте следующие библиотеки типов:
Active DS Type Library (Version 1.0)
Microsoft WMI Scripting v1.1 Library (Version 1.1)
Отлично, теперь в палитре компонентов у вас появились новые элементы, которые мы и будем в дальнейшем использовать.


При компиляции примера из архива выскакивает ошибка про отсутствие файла: WbemScripting_TLB.dcu
И соответственно компилироваться не хочет

> установить WMI SDK;
На мой взгляд, после установки WMI SDK, данная проблема исчезнет


> Active DS Type Library (Version 1.0)
> Microsoft WMI Scripting v1.1 Library (Version 1.1)


Этих пунктов нет


 
Eraser ©   (2006-11-10 23:51) [16]

> [15] SkySpeed   (10.11.06 23:43)
> Издержка из Readme.txt:

этот реадми я писАл.

> Этих пунктов нет

их нужно перед тем, как открывать проект, импортировать из ActiveX в VCL...

третий раз может сразу повторить? )


 
SkySpeed   (2006-11-11 00:37) [17]

Выполняю Component -> Import ActiveX Control
В открывшемся списке компонентов следующих компонентов в списке у меня нет:

> Active DS Type Library (Version 1.0)
> Microsoft WMI Scripting v1.1 Library (Version 1.1)


P.S.: делаю это перед открытием проекта

Как в таком случае мне импортировать эти компоненты?

P.S.: сперва надо на мой взгляд установить WMI, ссылки на неё у меня нет


 
SkySpeed   (2006-11-11 00:43) [18]

На сайте майкрософта, SDK только для Windows Server 2003 SP1:
http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en

А надо для Windows XP


 
Eraser ©   (2006-11-11 00:57) [19]

> [18] SkySpeed   (11.11.06 00:43)

а есть D7 что-типа Import Type Librery? оно там.

> [18] SkySpeed   (11.11.06 00:43)

не нужно никаких SDK для этого..
ты сслыку кинул на "The Platform SDK for Microsoft® Windows® Server 2003 SP1" разницу между WMI SDK видишь? )


 
Ketmar ©   (2006-11-11 01:40) [20]

>[19] Eraser(c) 11-Nov-2006, 00:57
>а есть D7 что-типа Import Type Librery? оно там.
есть. просто автор с Delphi плохо дружит. и с головой тоже.


 
SkySpeed   (2006-11-11 01:50) [21]


> > [18] SkySpeed   (11.11.06 00:43)
>
> а есть D7 что-типа Import Type Librery? оно там.

Вообще-то я использую D6, но установил вдобавок D7, прошолся по настройкам, то типа Import Type Library не нашёл


> > [18] SkySpeed   (11.11.06 00:43)
>
> не нужно никаких SDK для этого..
> ты сслыку кинул на "The Platform SDK for Microsoft® Windows®
> Server 2003 SP1" разницу между WMI SDK видишь? )


Конечно вижу, меня перекинуло сюда с вот этой страницы:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
А на эту страницу привёл поиск по WMI SDK


 
SkySpeed   (2006-11-11 01:59) [22]

В группе Project нашёл Import Type Library

Всё - сэнк Eraser(c) - я почти разобрался!

НО! Осталась ошибка: [Fatal Error] ProcessWatcher.dpr(7): File not found: "JwaWbemCli.dcu"


 
Ketmar ©   (2006-11-11 02:01) [23]

>[22] SkySpeed 11-Nov-2006, 01:59
>НО! Осталась ошибка: [Fatal Error] ProcessWatcher.dpr(7):
>File not found: "JwaWbemCli.dcu"
это кусок JCL, кажется.


 
Eraser ©   (2006-11-11 02:09) [24]

> [23] Ketmar ©   (11.11.06 02:01)

угу..
когда делал пример не собирался его общественности показывать )

> [22] SkySpeed   (11.11.06 01:59)

в JwaWbemCli объявлено несколько констант.
впиши

const
 WBEM_FLAG_RETURN_IMMEDIATELY     = $10;
 WBEM_FLAG_FORWARD_ONLY           = $20;

где нибудь в проекте и можешь смело выкидывать JwaWbemCli из uses.

ЗЫ
API от джедаев маст хэв )


 
Ketmar ©   (2006-11-11 02:11) [25]

>[24] Eraser(c) 11-Nov-2006, 02:09
>API от джедаев маст хэв )
и возразить-то нечего...
%-)


 
SkySpeed   (2006-11-11 02:25) [26]


> Eraser ©

СПАСИБО!!!!!!!!!!!!!!!! РАБОТАЕТ!!!!!!!!!!!


> ЗЫ
> API от джедаев маст хэв )

[в смысле must die?] %-)
и джедаев = microsoft ?


 
Eraser ©   (2006-11-11 02:27) [27]

> [26] SkySpeed   (11.11.06 02:25)


> [в смысле must die?] %-)

нет, в смысле must have %-)

ЗЫ не за что )


 
Джо ©   (2006-11-11 06:21) [28]


> и джедаев = microsoft ?

И как только MS не обзывали, но так — еще не слышал :)

P.S.
http://www.delphi-jedi.org/
http://homepages.borland.com/jedi/jvcl/


 
grisme ©   (2006-11-11 16:02) [29]

Джо ©   (11.11.06 06:21) [28]

:0) Они ОБЯЗАТЕЛЬНО продадут нашу галактику, а потом и вселенную :0) это злые джедаи


 
DprYg ©   (2006-11-12 13:19) [30]


> Как можно отлавливать запускаемые процессы?
NativeAPI, Function ZwCreateThread(ThreadHandle: pdword;
                       DesiredAccess: ACCESS_MASK;
                       ObjectAttributes: pointer;
                       ProcessHandle: THandle;
                       ClientId: PClientID;
                       ThreadContext: pointer;
                       UserStack: pointer;
                       CreateSuspended: boolean):NTStatus;
                       stdcall;external "ntdll.dll";


 
Ketmar ©   (2006-11-12 14:17) [31]

о. верный ответ. %-)


 
Сергей М. ©   (2006-11-13 08:38) [32]

PsSetCreateProcessNotifyRoutine


 
Ketmar ©   (2006-11-13 16:07) [33]

>[32] Сергей М.(c) 13-Nov-2006, 08:38
>PsSetCreateProcessNotifyRoutine
это если не лениво драйвер писать. %-)


 
n0name   (2006-11-13 20:23) [34]


> это если не лениво драйвер писать. %-)

В сети туча примеров.


 
Ketmar ©   (2006-11-13 21:31) [35]

>[34] n0name 13-Nov-2006, 20:23
>В сети туча примеров.
...вообще нерабочих или просто глюкавых.


 
Сергей М. ©   (2006-11-14 08:26) [36]


> Ketmar ©   (13.11.06 21:31) [35]


На том же wasm.ru в соотв.статье имеется вполне работоспособный пример.


 
n0name   (2006-11-14 10:45) [37]


> ...вообще нерабочих или просто глюкавых.

там нечему глючить.


 
Ketmar ©   (2006-11-14 17:29) [38]

>[36] Сергей М.(c) 14-Nov-2006, 08:26
>На том же wasm.ru в соотв.статье имеется вполне
>работоспособный пример.
ДРАЙВЕРА?!

>[37] n0name 14-Nov-2006, 10:45
>там нечему глючить.
повторюсь: в драйвере?

ну-ну.


 
n0name   (2006-11-14 18:02) [39]


> ДРАЙВЕРА?

угу


 
Ketmar ©   (2006-11-14 19:19) [40]

>[39] n0name 14-Nov-2006, 18:02
>угу
не делай мне смешно. и так поводов для смеха хватает.


 
#0FFFF   (2006-11-14 20:02) [41]

to Eraser

Не подскажете пожалуйста примером по проще насчёт processwatcher"а, например что типа Form1.ShowMessage("Запущен процесс "Имя"");


 
n0name   (2006-11-15 05:40) [42]


> не делай мне смешно. и так поводов для смеха хватает.

Кинуть ссылкой?


 
Сергей М. ©   (2006-11-15 08:10) [43]


> Ketmar ©   (14.11.06 17:29) [38]
> ДРАЙВЕРА?!


И драйвера и прикладной части.
Все с исходниками.


 
Игорь Шевченко ©   (2006-11-15 10:34) [44]

Ketmar ©   (14.11.06 19:19) [40]


> не делай мне смешно. и так поводов для смеха хватает.


Если чего-то не умеешь ты, это не значит, что этого не умеют другие. Например, написать безглючный драйвер.



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

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

Наверх





Память: 0.57 MB
Время: 0.041 c
1-1170616532
atruhin
2007-02-04 22:15
2007.04.01
Как перечислить зарегистрированные классы


2-1173613570
НОВИЧЕК2007
2007-03-11 14:46
2007.04.01
Работа программы на другом компьютере.


1-1170835673
Krants
2007-02-07 11:07
2007.04.01
TTreeView, убрать выделение


15-1173166807
Glivera
2007-03-06 10:40
2007.04.01
BIOS ROM Checksum error


3-1168422376
nomadminded
2007-01-10 12:46
2007.04.01
асинхронное соединение с MySQL





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский