Сборка — Использование lib, скомпилированной в masm в Stack Overflow

я пытаюсь сделать lib в masm32 (используя radasm) для использования в других проектах …

Исходный код библиотеки:

.386
.MODEL flat,stdcall
option casemap:none
.code
start:
PUBLIC HookProc
HookProc proc addy:DWORD

и для использования в msvc:

extern "C" void* HookProc(void* ptr);
#pragma comment(lib, "TestHook.lib")

однако это приводит к ошибке:

Win32Project1.obj: ошибка LNK2019: неразрешенный внешний символ _HookProc, указанный в функции _wmain

но я вижу в библиотеке есть

!<arch>
/               1368690603              0       20        `
®_HookProc@4/               1368690603              0       26        `

Почему не могу MSVC увидеть этот процесс в библиотеке ?? ; / это как-то связано с @4 ?

Изменить: изменено на .MODEL flat, c что избавился от @ 4, но _HookProc все еще не решен ……

0

Решение

CPP:

extern "C" int GetValue(void);

int main(int argc, char*arg[])
{
char *p = "test";
int v = GetValue();

return 0;
}

КАК М:

.486
.model flat, C
option casemap :none

.code

GetValue PROC
mov eax, 1234
ret
GetValue ENDP

END
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]