Реферат: Жесткое внедрение DLL в Windows-программы

(DWORD)pe_opt_head = (DWORD)pe_head + sizeof(IMAGE_FILE_HEADER);

//Определяем расположение таблицы импорта в секции импорта...

DWORD ImportRVA = pe_opt_head->

DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress;

int sect_num = -1;

//Ищем секцию с таблицей импорта...

(DWORD)sect = (DWORD)pe_opt_head + sizeof(IMAGE_OPTIONAL_HEADER);

int i;

for ( i=0; iNumberOfSections; i++)

{

if ( ImportRVA < sect->VirtualAddress )

{

sect--;

sect_num=i-1;

break;

}

sect++;

}

if (sect_num == -1)

{

Log->Lines->Add("Данная программа не использует динамические библиотеки!");

UnmapViewOfFile(fBeg);CloseHandle(fMap);

return;

}

sect++;

DWORD AfterImportSecBeg = (DWORD)fBeg + sect->PointerToRawData;

sect--;

//Получаем файловый указатель на раздел c таблицей импорта.

LPVOID ImportSecBeg;

К-во Просмотров: 2259
Бесплатно скачать Реферат: Жесткое внедрение DLL в Windows-программы