Вот как у меня объявлена функция экспорта в данный момент:
extern "C" __declspec(dllexport)
Iexport_class* __stdcall GetExported_Class();
Когда VS2008 скомпилировал исходный код для этого, созданная dll содержит это в своей таблице экспорта:
_GetExported_Class@0
Для совместимости с другими компиляторами мне нужно, чтобы указанное выше оформление выглядело так:
GetExported_Class
Изменение соглашения о вызовах на __cdecl украсит его так, как я хочу, но соглашение было бы неправильным, поэтому я не могу его использовать. Мне нужно, чтобы он был оформлен так, как выглядит __cdecl, но вместо этого использует __stdcall.
Есть ли способ сделать это без с использованием файла .def? Есть ли переключатель или вариант, который я могу передать по ссылке. exe-компоновщик, который может заставить его украсить имя экспорта так, как я хочу?
Спасибо