Size: a a a

2021 February 17

AS

Anatoly Shirokov in supapro.cxx
что это, дорогой?
источник

I

Ilya in supapro.cxx
Anatoly Shirokov
что это, дорогой?
источник

I

Ilya in supapro.cxx
Anatoly Shirokov
#pragma once
#ifdef MY_EXPORT
#define MY_API __declspec(dllexport)
#else
#define MY_API __declspec(dllimport)
#endif
struct MY_API MyStruct {
  ...
};
при сборке dll определи  
MY_EXPORT
у них такой же препроцессор как и у тебя
источник

AS

Anatoly Shirokov in supapro.cxx
спасибо, но мне не надо
источник

I

Ilya in supapro.cxx
но они не определяют my_export
источник

I

Ilya in supapro.cxx
Anatoly Shirokov
спасибо, но мне не надо
знаю))
источник

I

Ilya in supapro.cxx
Просто к тому что там написано что оно автоматом определяется
источник

AS

Anatoly Shirokov in supapro.cxx
Ilya
но они не определяют my_export
ты почитай статьи сначала ссылки на которые ты кидаешь, а потом говори, что "они не определяют"
источник

VK

Valentin Kornienko in supapro.cxx
Ioann_V
Ну, я понимаю(потому что все так делают) - пытаюсь понять, почему? Если оно всегда прямоугольной формы. То есть, поведение тут точно есть от прямоугольтника - считай интерфейс, а вот наследования от - нету, потмоу что окно не фигура, так?
Window contains a Bounding Rect vs Window is child of a Rect
источник

I

Ilya in supapro.cxx
Anatoly Shirokov
ты почитай статьи сначала ссылки на которые ты кидаешь, а потом говори, что "они не определяют"
видимо хреново понял что-то
источник

AS

Anatoly Shirokov in supapro.cxx
Ilya
Просто к тому что там написано что оно автоматом определяется
работа с dll export/dll import устроена так: мы разводим код, используемый при создании самой dll и код используемый в клиенте этой библиотеки. вот это разведение:
#pragma once
#ifdef MY_EXPORT
#define MY_API __declspec(dllexport)
#else
#define MY_API __declspec(dllimport)
#endif
struct MY_API MyStruct {
  ...
};
чтобы структура пометилась как экспортируемая мы определяет макрос MY_EXPORT в проекте самой библиотеки. клиент же библиотеки ничего не определяет, поэтому у него это будет dll import
источник

I

Ilya in supapro.cxx
Anatoly Shirokov
работа с dll export/dll import устроена так: мы разводим код, используемый при создании самой dll и код используемый в клиенте этой библиотеки. вот это разведение:
#pragma once
#ifdef MY_EXPORT
#define MY_API __declspec(dllexport)
#else
#define MY_API __declspec(dllimport)
#endif
struct MY_API MyStruct {
  ...
};
чтобы структура пометилась как экспортируемая мы определяет макрос MY_EXPORT в проекте самой библиотеки. клиент же библиотеки ничего не определяет, поэтому у него это будет dll import
окей. Тупой вопрос наверное, но где тогда дефайнить my_export?
источник

AS

Anatoly Shirokov in supapro.cxx
Ilya
окей. Тупой вопрос наверное, но где тогда дефайнить my_export?
источник

D

Danya in supapro.cxx
Ilya
окей. Тупой вопрос наверное, но где тогда дефайнить my_export?
В хедере с общими компонентами
источник

I

Ilya in supapro.cxx
я так понимаю, в вижуалке это будет в пропертис проекта?
источник

I

Ilya in supapro.cxx
спасибо большое
источник

AS

Anatoly Shirokov in supapro.cxx
Ilya
я так понимаю, в вижуалке это будет в пропертис проекта?
да, в макросах, в preprocessor definitions
источник

D

Del in supapro.cxx
В общем, я все сделал. Пересобрал либу, заменил .lib и .dll, поставил макросники, поменял названия переменных


https://pastebin.com/isiH5f7V
источник

D

Del in supapro.cxx
Ошибки абсолютно те же
источник

IZ

Ilia Zviagin in supapro.cxx
Ну ты либо код присылай, либо сам решай
источник