Описание тега declspec

1 ответ

Предупреждение C4091: "__declspec(dllexport)"

У меня есть следующий код, где я пытаюсь экспортировать функцию с именем "Interface_API" из моей библиотеки DLL. #ifdef INTERFACEDLL_EXPORTS #define UserApp_API __declspec(dllexport); #else #define UserApp_API __declspec(dllimport); #endif UserApp_A…
27 дек '14 в 00:23
0 ответов

Windows DLL, экспорт, шаблоны и проблемы компоновщика

У меня есть проблема. У меня есть структура классов, которая выглядит примерно так: // Common.hpp template <typename Type> class CommonInternalRegistrar { CommonInternalRegistrar ( Type* pointerToRegister ) ; } ; template <typename Type>…
10 дек '14 в 14:22
1 ответ

Возникли проблемы при импорте функции из DLL C++ ошибка LNK 2019

Я пытаюсь написать и протестировать DLL-файл на C++, который я могу вызывать всякий раз, когда мне нужен доступ на уровне файловой системы. В настоящее время у меня огромная головная боль при попытке доступа к методам в этой DLL в C++. Как ни странн…
27 июн '13 в 14:33
0 ответов

Использование __declspec(dllexport)

Я делаю мою библиотеку.dll реализованной в ООП мои макросы: #ifndef _SWC_ #define DLLINTERFACE __declspec(dllexport) #else #define DLLINTERFACE __declspec(dllimport) после того, как я положил DLLINTERFACE перед именем класса, используя некоторые std…
1 ответ

Преобразование Pygmalion: использование "#define DLL" в качестве замены для "extern "C" __declspec(dllexport)"

Есть ли способ использовать svelte #define для преобразования неприглядного ""extern \"C\" __declspec(dllexport)"в один очаровательный термин"DLL".То есть: #define DLL "extern "C" __declspec(dllexport)" Проблема, конечно же, заключается во встроенны…
15 июл '12 в 19:24
2 ответа

Не удается выделить память динамически в цикле (функция съедает всю память)

Когда я запускаю приведенный ниже код, на второй итерации цикла зависает вся ОС. Если я открою диспетчер задач, он ясно покажет, что произошла огромная утечка памяти. После того, как я начал выполнение кода, вся память исчезла за 4 секунды. Вот код:…
1 ответ

Как обрабатывать несколько библиотек при экспорте символов?

Я работаю над проектом (кросс-платформенный, но в данном случае имеет значение только Windows), который создает много общих библиотек (которые в некоторой степени зависят друг от друга). Все заголовочные файлы, которые объявляют функции или структур…
12 май '14 в 06:57
0 ответов

C2487 с форсированными членами

Я пытаюсь реорганизовать наш проект из статических библиотек в разделяемые библиотеки подпроектов. Что ж, при использовании VS Compiler все экспортирующие классы нуждаются в _ declspec (dllexport), а для их импорта требуется _declspec (dllimport). Р…
12 фев '13 в 16:50
2 ответа

Правильный способ связать статические библиотеки с DLL

Мой проект строится через несколько статических библиотек, которые должны быть связаны с основной библиотекой DLL, и в результате получают одну DLL. С помощью __declspec(dllexport) Атрибут не приводит к появлению в dll указанных функций статических …
16 июл '15 в 06:03
1 ответ

Не удается передать AutoSeededRandomPool в качестве параметра при использовании CryptoPP::RSA, ошибка C2729

Я работаю с реализацией RSA с использованием Crypto++. Я пытаюсь сгенерировать пару ключей RSA (открытый и закрытый) для файла, подобного этому. Код может работать идеально, когда я положил все в main, Когда я пытаюсь разделить его на функцию и пере…
16 ноя '16 в 03:30
0 ответов

Как экспортировать `переменную статического члена класса` в библиотеку Windows .dll с помощью CMake

Я строю библиотеку C ++ для Windows, Linux / Unix на основе CMake. Я создаю общую библиотеку (.dll) в Windows и хочу использовать статическую библиотеку (.a) в Linux / Unix. На винде я знаю как это сделать __declspec(dllexport/dllimport) для каждой …
31 авг '17 в 06:14
0 ответов

__declspec(dllimport) c структура: нарушение доступа

Некоторое время я пытался найти решение для следующей проблемы, но безуспешно: У меня есть "c" dll, где определена следующая структура: файл: myDll.h #ifdef EXPORTS #define EXPORT __declspec(dllexport) #else #define EXPORT __declspec(dllimport) #end…
07 мар '16 в 14:01
2 ответа

На что распространяется __declspec(uuid(" ComObjectGUID "))?

У меня есть кусок кода, который использует специфичное для Microsoft расширение C++: interface __declspec(uuid("F614FB00-6702-11d4-B0B7-0050BABFC904")) ICalculator : public IUnknown { //... }; На что распространяется это предложение? Как я могу пере…
02 июн '11 в 20:23
1 ответ

Использование __declspec(nothrow) в функциях, которые возвращают ссылки

Я хотел бы подать заявку __declspec(nothrow) на некоторых из моих функций-членов, которые возвращают ссылки на объекты. Например, я хотел бы добавить его в эту функцию (в MyClass.h): CMyClass& operator= ( IN UInt32 nValue ) { return ( SetValue (…
06 фев '12 в 22:41
1 ответ

Соглашение о связях C/C++

При вызове алгоритмов C++, таких как copy_if, transform и т. Д., Которые в качестве последнего аргумента принимают унарную или двоичную функцию, могу ли я передать функцию библиотеки C, например, atoi или tolower. Например, ниже звонки работают норм…
18 мар '14 в 00:21
2 ответа

__declspec(dllimport) вызывает сбой компилятора в MSVC 2010

В файле *.cpp пытается использовать стороннюю библиотеку lib: #define DLL_IMPORT #include <thirdParty.h> // Third party header has code like: // #ifdef DLL_IMPORT // #define DLL_DECL __declspec(dllimport) // fatal error C1001: An internal erro…
13 сен '12 в 09:12
1 ответ

Символ не экспортируется в DLL

Я генерирую DLL в VS2010 в два этапа: Сначала генерируется статический файл.LIB, где функция определяется как __declspec(dllexport). Во-вторых, создается DLL, которая ссылается на этот файл.LIB. Эта результирующая DLL не содержит экспортированной фу…
1 ответ

MSVC: __declspec(dllexport) не содержит символов

У меня есть небольшая проблема, когда речь идет о написании DLL в MSVC (в частности, версия 2010 года). Моя программа состоит из основной части и библиотеки DLL. DLL содержит функцию, которая __declspec(dllexport) int test_function(void) { return 42…
23 сен '11 в 09:51
1 ответ

C++ [[gnu::visibility("default")]] vs __declspec(dllexport) в Windows и Linux

Мне нужно было создать несколько общих библиотек на C++, и я использовал Linux в качестве операционной системы для разработчиков. Я знаю, что мне нужно сделать символы видимыми, если я хочу загрузить их через dlsym/LoadLibrary, Так что в Linux все м…
24 янв '14 в 14:59
3 ответа

Что на самом деле означает __declspec(dllimport)?

Я видел исходный код Qt так: class Q_CORE_EXPORT QBasicAtomicInt { public: ... }; Который Q_CORE_EXPORT макрос определяет как показано ниже: define Q_DECL_IMPORT __declspec(dllimport) Так что же __declspec(dllimport) на самом деле означает?
14 янв '12 в 15:33