Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Подключение библиотеки, написанной на Asm, к C-программе

Ответить
Настройки темы
Подключение библиотеки, написанной на Asm, к C-программе

Аватара для XXXX Pro

Пользователь


Сообщения: 130
Благодарности: 0

Профиль | Сайт | Цитировать


У меня такая проблема: я написал программу на Visual C и мне нужно использовать в ней функцию, написанную на Assemblerе (MASM32).
И программа, и эта процедура скомпилировались нормально, а вот при связывании (линковке) начались проблемы: хотя процедура на Ассемблере и ее прототип в C называются одинаково, после компиляции они получают разные имена, (т.е. изначально процедура называлась procMD5hash, после компиляции в MASM32 она называется _procMD5hash@12, а после компиляции в C - ?procMD5hash@@YAXPADH0@Z), соответственно, link дает сообщение fatal error LNK1120: 1 unresolved externals. Кто-нибудь знает, как с этим бороться?

-------
Объединенный Открытый Проект OpenProj.Ru - сайт для Настоящих Компьютерщиков


Отправлено: 07:14, 10-08-2003

 

редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


XXXX Pro
Ну, наверное еомпилировать программу в режиме C, а не C++, во-первых. Ну или написать extern "C" в прототипе используемой функции. В MASM'е, наверняка тоже есть ключики для того, что бы давать экспортируемым функциям сишные названия, но я его не знаю, т.к. масмом не пользуюсь (nasm рулит ).

-------
http://ivank.ru


Отправлено: 13:15, 10-08-2003 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для XXXX Pro

Пользователь


Сообщения: 130
Благодарности: 0

Профиль | Сайт | Цитировать


Да, оказалось, что добавить extern "C" и объявить функцию как stdcall, и все скомпилировалось нормально. Спасибо!

-------
Объединенный Открытый Проект OpenProj.Ru - сайт для Настоящих Компьютерщиков


Отправлено: 23:33, 10-08-2003 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Подключение библиотеки, написанной на Asm, к C-программе

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Assm - ASM & Microsoft Visual C++ 2008 Express Edition SS3 Программирование и базы данных 2 15-10-2010 16:25
Народ помогите разобраться в asm'e! novichek_new Программирование и базы данных 8 30-12-2005 18:55
asm to pas Mavlyudov Программирование и базы данных 4 17-05-2005 14:52
Память, asm и BSD Guest Программирование и базы данных 1 19-09-2004 22:40
Asm in freeBSD Guest Программирование и базы данных 1 14-06-2004 18:08




 
Переход