Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Что за PImage или как получить размер Progra Image Добавлено: 16.07.05 19:20  

Автор вопроса:  Amor | ICQ: 1268198 
Вот кусок кода на дельфи:
Size := PImageOptionalHeader(pointer(integer(Module) +
                               PImageDosHeader(Module)._lfanew + SizeOf(dword) +
                               SizeOf(TImageFileHeader))).SizeOfImage;
Как такоеже замутить на VB

Ответить

  Ответы Всего ответов: 11  

Номер ответа: 1
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #1 Добавлено: 17.07.05 08:44
Так, это берём дос-заголовок, находим положение PE и смотрим его... ага...
А тебе надо прямо из файла или именно по HINSTANCE? Из файла проще и понятнее.

А через HINSTANCE так:
private declare function GetMem4 lib "msvbvm60" (pSrc as any, pDst as any) as long

.....
dim Size as long
getmem4 byval module + &h3c, size
getmem4 byval module + size + len(t) + &h18 + &h38, size

Ответить

Номер ответа: 2
Автор ответа:
 Amor



ICQ: 1268198 

Вопросов: 31
Ответов: 101
 Профиль | | #2 Добавлено: 17.07.05 09:27

Когда я этот код вставляю винда викидывает окно об отправке ошибки
вобщем чёте там глючит
А есть ли другой способ полумения размера PE Image

Ответить

Номер ответа: 3
Автор ответа:
 Amor



ICQ: 1268198 

Вопросов: 31
Ответов: 101
 Профиль | | #3 Добавлено: 17.07.05 09:29
Зачем мне это нужно?
А вот зачем
есть на дельфи замечательный сорец
function InjectThisExe(Process: dword; EntryPoint: pointer): boolean;
var
  Module, NewModule: pointer;
  Size, TID: dword;
  hThread : dword;
  BytesWritten: dword;
begin
  Result := False;
  Module := pointer(GetModuleHandle(nil));
  Size := PImageOptionalHeader(pointer(integer(Module) +
                               PImageDosHeader(Module)._lfanew + SizeOf(dword) +
                               SizeOf(TImageFileHeader))).SizeOfImage;
  NewModule := VirtualAllocEx(Process, Module, Size, MEM_COMMIT or
                              MEM_RESERVE, PAGE_EXECUTE_READWRITE);
  if NewModule = nil then exit;
  WriteProcessMemory(Process, NewModule, Module, Size, BytesWritten);
  hThread := CreateRemoteThread(Process, nil, 0, EntryPoint, NewModule, 0, TID);
  if hThread <> 0 then Result := True;
end;

Инекция те исполнение кода программы в другом процессе

Ответить

Номер ответа: 4
Автор ответа:
 Amor



ICQ: 1268198 

Вопросов: 31
Ответов: 101
 Профиль | | #4 Добавлено: 17.07.05 09:30
Подробнее: http://wasm.ru/article.php?article=apihook_2

Ответить

Номер ответа: 5
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #5 Добавлено: 17.07.05 09:55
Ага...
Чел пишет внедрение в exe, не удосужившись поставить option explicit...

len(t) убрать.

Ответить

Номер ответа: 6
Автор ответа:
 Amor



ICQ: 1268198 

Вопросов: 31
Ответов: 101
 Профиль | | #6 Добавлено: 17.07.05 10:06
Серавно Сенд еррор или не сенд вылетает

Ответить

Номер ответа: 7
Автор ответа:
 Amor



ICQ: 1268198 

Вопросов: 31
Ответов: 101
 Профиль | | #7 Добавлено: 17.07.05 10:07

А мож у кого есть сорец внедрения exe в процесс
У меня тока dll в процесс есть
а нада exe

Ответить

Номер ответа: 8
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #8 Добавлено: 17.07.05 10:37
Ошибка в твоём коде, а не в моём.
Мой правильно получает ImageSize.

Ответить

Номер ответа: 9
Автор ответа:
 Amor



ICQ: 1268198 

Вопросов: 31
Ответов: 101
 Профиль | | #9 Добавлено: 17.07.05 10:44
Ну я даже так просто в коде формы написал
option explicit
private declare function GetMem4 lib "msvbvm60" (pSrc as any, pDst as any) as long

Private Sub Form_Load()
dim Size as long
getmem4 byval module + &h3c, size
getmem4 byval module + size + &h18 + &h38, size '+ len(t) - hot s etim hot bez nego
End Sub

Ответить

Номер ответа: 10
Автор ответа:
 Amor



ICQ: 1268198 

Вопросов: 31
Ответов: 101
 Профиль | | #10 Добавлено: 17.07.05 10:44

Seravno vilitaet

Ответить

Номер ответа: 11
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #11 Добавлено: 17.07.05 11:26
Ну и как ты смог это запустить, если стоит option explicit, а module не объявлена?

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам