информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Все любят медЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[Win32] вопрос о handle 25.06.01 01:52  Число просмотров: 885
Автор: Vital Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> вопрос о handle
> как я понял у каждого процесса или у програмки есть свой
> handle
> и узнав его то можно к примеру закрыть это приложение или к
> примеру
> сделать его недействительным или что то в этом роде.
> раскажите мне плиз про это. и подкинте пару API функций для
> получения handle


Да у каждого процесса есть свой описатель HANDLE и идентификатор ID.
Последовательность получения HANDLE процесса по дескриптору окна
этого процесса такова:

HWND H; //дескриптор окна, известен
DWORD prID; //ID процесса
HANDLE prHand; //описатель процесса

GetWindowThreadProcessId(H, &prID); //получаем ID процесса в prID

//получаем описатель процесса
prHand = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prID);

//здесь можно что-нибудь сделать с процессом
//например уничтожить
TerminateProcess(prHand, 0); //уничтожаем процесс prHand

CloseHandle(prHand);//закрываем описатель процесса


если нужно узнать описатель процесса по имени программы
нужно использовать ф-и
CreateToolhelp32Snapshot();
Process32First();
Process32Next();
объявленные в Tlhelp32.h

Исли нужно узнать описатель текущего процесса - GetCurrentProcess();

все это в общих чертах и в основном для Win9x
для более детального изучения почитай спец. лит-ру
объявления ф-й можешь посмотреть в MSDN
<programming>
вопрос о handle 24.06.01 23:33  
Автор: !!!! Статус: Незарегистрированный пользователь
<"чистая" ссылка>
вопрос о handle
как я понял у каждого процесса или у програмки есть свой handle
и узнав его то можно к примеру закрыть это приложение или к примеру
сделать его недействительным или что то в этом роде.
раскажите мне плиз про это. и подкинте пару API функций для
получения handle
[Win32] вопрос о handle 25.06.01 01:52  
Автор: Vital Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> вопрос о handle
> как я понял у каждого процесса или у програмки есть свой
> handle
> и узнав его то можно к примеру закрыть это приложение или к
> примеру
> сделать его недействительным или что то в этом роде.
> раскажите мне плиз про это. и подкинте пару API функций для
> получения handle


Да у каждого процесса есть свой описатель HANDLE и идентификатор ID.
Последовательность получения HANDLE процесса по дескриптору окна
этого процесса такова:

HWND H; //дескриптор окна, известен
DWORD prID; //ID процесса
HANDLE prHand; //описатель процесса

GetWindowThreadProcessId(H, &prID); //получаем ID процесса в prID

//получаем описатель процесса
prHand = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prID);

//здесь можно что-нибудь сделать с процессом
//например уничтожить
TerminateProcess(prHand, 0); //уничтожаем процесс prHand

CloseHandle(prHand);//закрываем описатель процесса


если нужно узнать описатель процесса по имени программы
нужно использовать ф-и
CreateToolhelp32Snapshot();
Process32First();
Process32Next();
объявленные в Tlhelp32.h

Исли нужно узнать описатель текущего процесса - GetCurrentProcess();

все это в общих чертах и в основном для Win9x
для более детального изучения почитай спец. лит-ру
объявления ф-й можешь посмотреть в MSDN
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach