Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Handle в системе, завершение / 8 сообщений из 8, страница 1 из 1
14.12.2007, 13:03
    #35010289
M.A.R.K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
Привет всем.

Assembler код:
------------------------------------------------------------
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
CloseRemoteHandle Proc hProcess: DWORD, hHandle: DWORD
	LOCAL hMem: DWORD
	LOCAL kernelBase: DWORD
	LOCAL CodeSize: DWORD
	
	invoke	GetModuleHandle,offset @kernel
	mov		dword ptr[kernelBase],eax
	invoke	GetProcAddress,eax,offset @CloseHandle
	lea		ebx,_data
	mov		dword ptr[ebx],eax
	invoke	GetProcAddress,kernelBase,offset @ExitThread
	mov		dword ptr[ebx+ 8 ],eax
	mov		eax,hHandle
	mov		dword ptr[ebx+ 4 ],eax
	lea		edx,InjectedCode_End
	lea		eax,InjectedCode
	sub		edx,eax
	mov		CodeSize,edx
	invoke	VirtualAllocEx,hProcess, 0 ,CodeSize,MEM_COMMIT+MEM_RESERVE,PAGE_READWRITE
	mov		hMem,eax
	lea		ebx,InjectedCode
	invoke	WriteProcessMemory,hProcess,eax,ebx,CodeSize, 0 
	invoke	VirtualProtectEx,hProcess,hMem,CodeSize,PAGE_EXECUTE_READ, 0 
	invoke	CreateRemoteThread,hProcess, 0 , 0 ,hMem, 0 , 0 , 0 
	invoke	WaitForSingleObject,eax,INFINITE
	invoke	VirtualFreeEx,hProcess,hMem,CodeSize,MEM_DECOMMIT
	
	ret
CloseRemoteHandle EndP
------------------------------------------------------------
Если функции CloseRemoteHandle передать handle и hProcess, она, без проблем,закроет handle.
Я плохо знаю Assembler:

> Поставьте коментарии, объясните пожалуйста, что, где, зачем...
> Этот код нужен мне на VB 6.0, кто реальные спецы, переведите, пожалуйста на VB 6.0.
...
Рейтинг: 0 / 0
19.02.2008, 09:09
    #35140583
M.A.R.K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
Этот код, вобще, реально реализовать на Visual Basic?
...
Рейтинг: 0 / 0
19.02.2008, 09:53
    #35140661
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
ASM-код можно перевести в байт-код, загнать в байтовый массив и выполнить. Подробнее об этом расскажут на VBstreets.ru.
...
Рейтинг: 0 / 0
19.02.2008, 11:12
    #35140887
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
M.A.R.K,
1) это зачем?
2) не приведён код от метки InjectedCode до метки InjectedCode_End;
3) этот код (между InjectedCode и InjectedCode_End) может быть сложно или невозможно реализовать на VB. Правда, как сказал Antonariy, этот код, возможно, можно прописать в виде байтового массива.
...
Рейтинг: 0 / 0
19.02.2008, 11:58
    #35141046
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
Бенедиктэтот код, возможно, можно прописать в виде байтового массива.Эта технология называется black-coding. Есть пример для юзерконтрола.
...
Рейтинг: 0 / 0
19.02.2008, 12:33
    #35141183
Бенедикт
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
Эпиграф:
"Честное слово, я и не подозревал, что вот уже более сорока лет говорю прозой."
Мольер, "Мещанин во дворянстве"

Antonariy,
Поэтичное название, но малоинформативное. Видел такие фокусы для организации вызова функции по адресу. Но зачем ассемблерная вставка для юзерконтрола?
...
Рейтинг: 0 / 0
19.02.2008, 13:41
    #35141424
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
Для конкретного юзерконтрола. Конкретно - для api-реализаций Common Controls, для того, чтобы оконную процедуру запихать в ctl, а не bas, чтобы весь код был в одном модуле. Извращение, одним словом :)
...
Рейтинг: 0 / 0
22.02.2008, 07:40
    #35149398
M.A.R.K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Handle в системе, завершение
Мужики, а можно, как-нибудь обнулить счетчик пользователей у объекта Handle?
Например через NativeAPI или через Драйвер?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Handle в системе, завершение / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]