fasm Код (Text): section '.code' code readable executable proc DllEntryPoint, hinstDLL,fdwReason,lpvReserved xor eax,eax inc eax cmp [fdwReason],eax jne gf mov eax,[hinstDLL] mov [HNDL],eax gf: mov eax,TRUE ret endp section '.My' data readable writeable HNDL dd ? В аттаче сиотрите что оля выдает, что за нах?
ftp://ftp.tomtel.ru/upload/spa/sc.GIF ftp://ftp.tomtel.ru/upload/spa/sc.GIF Одним словом вот скрин, иож fasm гонит ЗЫ до этого 1.60 корявые dll делала, 1.67 норм стала...
Недостатки фасма - продолжение его достоинств, все можно и нужно делать самому Суть: HNDL - релоцируемый адрес, но фасм автоматом таблицу релоков не создает и никаких предупреждений не выдает. Нужно "ручками" добавить или отдельную секцию релоков section '.reloc' fixups data discardable или таблицу релоков в существующую секцию data fixups end data PS: Не знаю пошел ли Томаш на уступки в новых версиях фасма, но с релоками была еще одна неприятность - если в dll нет релоцируемых адресов, то таблица релоков оказывается пустой, а это не допустимо, т.к. таблицы или не должно быть вообще (в NT) или она должна содержать хотя бы одну пустую запись. Подробности в см. в fasm dll & отсутствие релоков)
Все спасиб, все теперь ясно, а для тех кто на теже грабли наступил хочу заметить что стрые версии (1.60) торчто просто убивала PE и всё!?