Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Минимальная dll на масме32

67K
28 октября 2011 года
Виктор_Сен
22 / / 21.10.2011
Привет! Помогите оформить минимальную dll на масме32. Дело в том, что на 64 масме у меня компилировался этот код:
Код:
.code
 
dllMain proc
        mov rax,1
        ret
dllMain endp
 
memCpy64 proc
        mov rax,5
        ret
memCpy64 endp
 
end
а вот когда я его решил перенести на 32 версию, возникли проблемы. Я rax заменил на eax, а memCpy64 на memCpy32, и получился вот такой код:
Код:
.code
 
dllMain proc
        mov eax,1
        ret
dllMain endp
 
memCpy32 proc
        mov eax,5
        ret
memCpy32 endp
 
end
Но он не компилируется. Вот скрин:[ATTACH=CONFIG]5387[/ATTACH]
7
28 октября 2011 года
@pixo $oft
3.4K / / 20.09.2006
Попробуй такой код
 
Код:
.386
.Model Flat,StdCall
.Code
    DLLMain Proc
        XOr EAX,EAX
        Inc EAX
        Ret 12
    DLLMain EndP
End DLLMain
Не забываем,что DLLMain не без параметров
67K
28 октября 2011 года
Виктор_Сен
22 / / 21.10.2011
Попробовал. Объектный файл создаётся, значит в коде проблем нет. Но вот линкер ругается. Пишет про нераспознанный параметр /z2. Откуда он его взял, не понимаю. Вот командная строка:
 
Код:
ml MemManager32DLL.asm /link /dll /out:"MemManager32DLL.dll" /entry:dllMain /def:MemManager32DLL.def
Вот скрин:[ATTACH=CONFIG]5388[/ATTACH]
260
28 октября 2011 года
Ramon
1.1K / / 16.08.2003
Ассемблировать нужно в COFF формат вестимо.

PS: MemManager32DLL.dll - сочувствую.
67K
28 октября 2011 года
Виктор_Сен
22 / / 21.10.2011
Цитата: Ramon
Ассемблировать нужно в COFF формат вестимо

Да, именно

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог