Использование dumbin / export статической библиотеки для записи файла заголовка

Я хотел бы статически связать и использовать в моей программе. Однако у меня нет исходного кода, поэтому мне нужно было бы написать файл заголовка самостоятельно.

Вот результат моего dumbin / экспорта

Тип файла: БИБЛИОТЕКА

Exports

ordinal    name

?about@@YGHXZ (int __stdcall about(void))
?barcode@@YGHPAD00000000@Z (int __stdcall barcode(char *,char *,char *,char *,char *,char *,char *,char *,char *))
?clearbuffer@@YGHXZ (int __stdcall clearbuffer(void))
?closeport@@YGHXZ (int __stdcall closeport(void))
?downloadpcx@@YGHPAD0@Z (int __stdcall downloadpcx(char *,char *))
?formfeed@@YGHXZ (int __stdcall formfeed(void))
?nobackfeed@@YGHXZ (int __stdcall nobackfeed(void))
?openport@@YGHPAD@Z (int __stdcall openport(char *))
?printerfont@@YGHPAD000000@Z (int __stdcall printerfont(char *,char *,char *,char *,char *,char *,char *))
?printlabel@@YGHPAD0@Z (int __stdcall printlabel(char *,char *))
?sendcommand@@YGHPAD@Z (int __stdcall sendcommand(char *))
?setup@@YGHPAD000000@Z (int __stdcall setup(char *,char *,char *,char *,char *,char *,char *))
?usbportqueryprinter@@YGHXZ (int __stdcall usbportqueryprinter(void))
?usbportwrite@@YGHPAD@Z (int __stdcall usbportwrite(char *))
?windowsfont@@YGHHHHHHHPAD0@Z (int __stdcall windowsfont(int,int,int,int,int,int,char *,char *))
?windowsfontU@@YGHHHHHHHPAD0@Z (int __stdcall windowsfontU(int,int,int,int,int,int,char *,char *))

Я попытался написать файл заголовка, чтобы я мог использовать эти функции (показ одной):

int __stdcall openport(char *printername);

Я статически связал библиотеку с моей программой и попытался вызвать функцию openport, но я получаю undefined reference to openport(char*)@4,

Кто-нибудь знает, как написать это, чтобы это правильно связывалось? (Или это даже хорошая идея?)

редактировать

Я тоже побежал undname ?openport@@YGHPAD@Z, который вернулся:

Отделка: — «? Openport @@ YGHPAD @ Z»

is: — «int __stdcall openport (char *)»

Что может означать, что я просто не могу правильно связать.

0

Решение

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

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

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

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