Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Мусор в названиях экспортируемых функций dll


Автор: Yak 5.11.2005, 12:48
Короче тема такая - есть готовый код диспечера задач на VB 6.0 . Но он использует библиотеку, написанную на VC++. Так вот, с этой библиотекой и проблемы - при компиляции все вроде проходит без проблем, но когда лезешь в таблицу экспорта нех-редактором - там функция GetAllProcesses выглядит примерно так - ?GetAllProcesses@2vfgjh@@LAGRE_INTEGER@GYKFDW@@FJ
Естесственно, VB ругается что функция не найдена. Перерыл все - а как сделать функции нормальный вид так и не нашел. Конеш можно опять тем же нех-редактором поправить, мусор нулями забить, но эт жутко неудобно, хотя и работает.

Кто нить знает, от чего такая хрень происходит? и как от этого избавиться?

P.S. Просьба сильно не ругатся, если такая темка где уже и была...

Автор: DeadSoul 5.11.2005, 12:55
Yak, в def-файле нужно прописать следующее
Код

SomeExportFunctionName @1
SomeOther ExportFunction @2

Автор: DrLazy 5.11.2005, 19:14
Смотреть в сторону __cdecl при объявлении функций в коде библиотеки.

Автор: GremlinProg 6.11.2005, 08:44
Это не мусор, это так функции кодируются в сях.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)