Сейчас на форуме: hgdagon, asfa (+3 невидимых)

 eXeL@B —› Программирование —› yzPELib
Посл.ответ Сообщение

Ранг: 66.8 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 07 марта 2007 08:21 · Поправил: UsAr
· Личное сообщение · #1

Потестируйте плиз библиотеку для работы с PE файлами. Особенно интересно ребилдер ресурсов который лежит в examples\resreb.exe

hxxp://usar.pp.ru/download/yzPELib.v0.3.rar



Ранг: 161.0 (ветеран)
Активность: 0.120
Статус: Участник

Создано: 08 марта 2007 02:26
· Личное сообщение · #2

У мну чет не очень пашет. Открываю екзе, сохраняю екзе. При запуске екзе пишет, что @.dll не найден



Ранг: 66.8 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 08 марта 2007 02:32
· Личное сообщение · #3

kaiZer, на всех так или на чем-то конкретном?



Ранг: 161.0 (ветеран)
Активность: 0.120
Статус: Участник

Создано: 08 марта 2007 03:30
· Личное сообщение · #4

Проверил на 4 файлах, в 2 случаях была ошибка в том что не найдена библиотека, в 1 случае файл просто не запустился, появилась ошибка, и еще один файл запустился.



Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 13 марта 2007 22:18
· Личное сообщение · #5

Пожалуйста, подскажите.

Как на Delphi написать процедуру перечсета checksum, которую делает LordPE ???

Ищу PeLib.pas, PeLib.dcu ! Где можно скачать ?




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 13 марта 2007 23:24
· Личное сообщение · #6

VitSSS пишет:
Ищу PeLib.pas, PeLib.dcu ! Где можно скачать ?


getfile.biz/64765

-----
[nice coder and reverser]




Ранг: 39.4 (посетитель), 9thx
Активность: 0.01=0.01
Статус: Участник

Создано: 14 марта 2007 20:04
· Личное сообщение · #7

VitSSS пишет:
Как на Delphi написать процедуру перечсета checksum, которую делает LordPE ???


приблизительно так:

Function Update_PE_CheckSum(File_Name : String) : Boolean;
Var Old_Sum, New_Sum : DWORD;
PE_File : T_PE_File;
Begin
Update_PE_CheckSum := False;
If MapFileAndCheckSum(PChar(File_Name), Old_Sum, New_Sum) <> CHECKSUM_SUCCESS Then Exit;
PE_File := T_PE_File.Create;
PE_File.InitFromFile(File_Name, False);
PE_File.LoadInfo;
PE_File.PE_Header.File_CheckSum := New_Sum;
PE_File.Update_Pe_Header;
PE_File.Destroy;
Update_PE_CheckSum := True;
End;




Ранг: 66.8 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 14 марта 2007 21:05 · Поправил: UsAr
· Личное сообщение · #8

Кстати может кто посоветует какие функции можно в либу добавить?



Ранг: 2.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 16 марта 2007 18:55
· Личное сообщение · #9

2nd пишет:
приблизительно так:

Function Update_PE_CheckSum(File_Name : String) : Boolean;
Var Old_Sum, New_Sum : DWORD;
PE_File : T_PE_File;
Begin
Update_PE_CheckSum := False;
If MapFileAndCheckSum(PChar(File_Name), Old_Sum, New_Sum) <> CHECKSUM_SUCCESS Then Exit;
PE_File := T_PE_File.Create;
PE_File.InitFromFile(File_Name, False);
PE_File.LoadInfo;
PE_File.PE_Header.File_CheckSum := New_Sum;
PE_File.Update_Pe_Header;
PE_File.Destroy;
Update_PE_CheckSum := True;
End;



А где взять "T_PE_File" ???




Ранг: 55.8 (постоянный), 6thx
Активность: 0.030
Статус: Участник
[www.AHTeam.org]

Создано: 17 марта 2007 06:51
· Личное сообщение · #10

VitSSS
Сэр, тема то не про делфи, а про либу на масме.




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 17 марта 2007 08:24
· Личное сообщение · #11

юз, почини ресурсы ;)

-----
Тут не могла быть ваша реклама




Ранг: 66.8 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 17 марта 2007 10:08 · Поправил: UsAr
· Личное сообщение · #12

Дык может выложит кто-нибудь файлы на которых ребилдер не работает?

PS: VitSSS, msdn2.microsoft.com/en-us/library/ms679281.aspx



Ранг: 161.0 (ветеран)
Активность: 0.120
Статус: Участник

Создано: 17 марта 2007 13:27
· Личное сообщение · #13

duvivi.at.tut.by/Filez.rar




Ранг: 55.8 (постоянный), 6thx
Активность: 0.030
Статус: Участник
[www.AHTeam.org]

Создано: 18 марта 2007 07:38
· Личное сообщение · #14

UsAr
Сделай нормальную статик либу, пригодную для с++ и h файл к ней



Ранг: 66.8 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 18 марта 2007 19:16 · Поправил: UsAr
· Личное сообщение · #15

v0.4a
Исправлен AddDataToPEFile, теперь при добавлении новой секции файл сначала выравнивается
Вставлен SEH в MapFile
Добавлена простенькая функция проверки PE файла на правильность IsValidPEFile
Исправлен баг с флагом ALIGN_FILE в функции PERealign
KillSection теперь удаляет последнюю секцию если ей передавать вместо номера -1
Добавлены функции InstallSehFrame и KillSehFrame
Добавлены *.h файлы (thanks to FEUERRADER & W[4Fh]LF )
Исправлены некоторый функции которые не сохраняли основные регистры

hxxp://usar.pp.ru/download/yzPELib.v0.4a.rar

PS: kaiZer, на упакованных тестировать? На упакованный и не должно работать.



Ранг: 66.8 (постоянный)
Активность: 0.030
Статус: Участник

Создано: 13 июня 2007 12:06
· Личное сообщение · #16

v0.4
Исправлен GetOverlay, теперь корректно находит оверлей и проверяет если он используется для выравнивания
Исправлен AddDataToPEFile, более корректно добавляет код в последнюю секцию
Исправлен ExtractOverlay, не закрывал хэндл файла
Добавлены функции IsValidPEFile и IsValidPEImage
Добавлена экспериментальная функция FindFreeSpace для поиска свободного места в образе ввиде нулей (особо не тестировалась)

v0.4b
Добавлена функция GetOverlay
PERealign теперь может сохранять оверлей если указан флаг SAVE_OVERLAY
!Слово overlEy везде заменено на overlAy
Добавлены функции GetPEInfo и SetPEInfo для быстрого доступа к полям PE файла
исправлен AddDataToPEFile, теперь возвращает нормальное VA нового кода а не выровненное

usar.pp.ru/download/path=&download=yzPELib.v0.4.rar


 eXeL@B —› Программирование —› yzPELib
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати