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