Код ASM в драйвере KMDF

Я добавил источник asm в проект драйвера KMDF:

.CODE

read_port PROC port : WORD, result_ptr : PTR BYTE

mov dx, port
in al, dx                       ; read port

mov rbx, result_ptr
mov BYTE PTR [rbx], al          ; place value at result address

ret

read_port ENDP

END

В файле Driver.c я могу вызвать read_port следующим образом:

extern void read_port(unsigned short port, unsigned char* result);

//...

unsigned char val;
read_port(0, &val);

Однако я не могу вызвать такую ​​функцию из дополнительного исходного файла, например test.cpp. Complier дает мне нерешенные внешние.

test.cpp:

extern void read_port(unsigned short port, unsigned char* result);

//...

unsigned char val;
read_port(0, &val);         // unresolved external

Какова причина?

1

Решение

Задача ещё не решена.

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


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