Помогите плз с проблемкой, хотел привязать асм к с++, но не получилось вот асм модуль:
| Код | .586 .MODEL FLAT,STDCALL OPTION CASEMAP:NONE GetStdHandle PROTO nStdHandle:DWORD SetConsoleTextAttribute PROTO nStdHandle:DWORD, nColor:DWORD .CODE
color PROC x:DWORD push ebp mov ebp,esp mov ebx,x INVOKE GetStdHandle, -11 INVOKE SetConsoleTextAttribute, eax, ebx pop ebp ret color ENDP END
|
это непосредственно компиляция(батник):
| Код | ml -Zi -c -Fl -coff %1.asm if errorLevel 1 goto ml_error Link32 %1.obj Lib32/kernel32.lib /SUBSYSTEM:CONSOLE /DEBUG if errorLevel 1 goto link_error
|
с++ код:
| Код | #include "stdafx.h" #include <iostream> using namespace std;
extern "C" void color(int a);
int _tmain(int argc, _TCHAR* argv[]) {
color(10); cout << "\n\nHello WORLD" << endl;
return 0; }
|
скрин ошибки при линковке:

в visual studio2008 выскакивает вот такая ошибка:
| Код | Компоновка... test123.obj : error LNK2001: неразрешенный внешний символ "_color" **\test123.exe : fatal error LNK1120: 1 неразрешенных внешних элементов
|
|