Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как в MS VC++ отключить naming decoration? / 3 сообщений из 3, страница 1 из 1
05.09.2006, 09:26
    #33964033
Masterhard
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в MS VC++ отключить naming decoration?
Я, конечно, понимаю, что naming decoration - это очень хорошо, но поскольку компилируемая DLL подсовывается уже готовому приложению - эту функцию требуется отключить.

А именно: при объявлении:

Код: plaintext
1.
2.
3.
extern "C" __declspec(dllexport) BITMAPINFO * __stdcall BmpStretch(BITMAPINFO *org, int cx, int cy, RGBQUAD bg)
{
. . .
}

эта функция экспортируется в DLL как _BMPStretch@16 (как и описано в документации). Как-то можно это безобразие отключить директивами препроцессора или настройками проекта?

Или только Def-файл делать?

P.S. Используется MS Visual C++ .Net
...
Рейтинг: 0 / 0
08.09.2006, 10:31
    #33973051
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в MS VC++ отключить naming decoration?
Это происходит, потому что эта функция (в данном случае явно) объявлена как __stdcall. Нужно ее объявить как __сdecl. Или вообще ничего не объявлять.
...
Рейтинг: 0 / 0
08.09.2006, 19:29
    #33975311
Lepsik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в MS VC++ отключить naming decoration?
я обычно так делаю

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
#ifdef IPSLIB_EXPORTS
#define IPSLIB_API __declspec(dllexport)
#else
#define IPSLIB_API __declspec(dllimport)
#endif

#ifdef __cplusplus
extern "C" {
#endif
IPSLIB_API int file2xmp( const char *file_path, exif_data *exif, iptc_data *iptc, xmp_data *xmp );
#ifdef __cplusplus
}
#endif
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как в MS VC++ отключить naming decoration? / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]