Pascal + C++
От: Аноним  
Дата: 20.07.11 11:07
Оценка:
Всем доброго дня!

Не знаю, верно ли я выбрал форум для своего вопроса, но все таки..
Имеем:
— Основной проект, написанный в Delphi 7
— разрабатываемая библиотечка с небольшой логикой на С++

Нужно будет их вместе соединить — основной проект будет юзать DLLку на плюсах.
Как нужно оформить DLL, что бы не возникло проблем?

— как собирать DLL — /MT ?
— как оформить экспортируемые функции из DLL — FAR PASCAL ?
— может еще какие нюансы будут, заранее благодарен всем откликнувшимся
Re: Pascal + C++
От: Centaur Россия  
Дата: 20.07.11 12:22
Оценка:
Здравствуйте, Аноним, Вы писали:

А>- Основной проект, написанный в Delphi 7

А>- разрабатываемая библиотечка с небольшой логикой на С++

А>Нужно будет их вместе соединить — основной проект будет юзать DLLку на плюсах.

А>Как нужно оформить DLL, что бы не возникло проблем?

А>- как собирать DLL — /MT ?


Если вам нужно будет вызывать функции из DLL из нескольких потоков — однозначно MT. Если вам не нужно поддержживать многопоточность И профилировщик показывает заметную потерю на поддержке многопоточности — то без MT. А в остальных случаях решайте для себя.

А>- как оформить экспортируемые функции из DLL — FAR PASCAL ?


export "C" и __stdcall. Слово FAR осталось где-то там, далеко, в 1995 году, в 16-битном мире.

И экспорт через .def-файл, а не новомодными __declspec(export)’ами.
Re[2]: Pascal + C++
От: Аноним  
Дата: 20.07.11 12:37
Оценка:
Здравствуйте, Centaur, Вы писали:

C>Если вам нужно будет вызывать функции из DLL из нескольких потоков — однозначно MT. Если вам не нужно поддержживать многопоточность И профилировщик показывает заметную потерю на поддержке многопоточности — то без MT. А в остальных случаях решайте для себя.


Я имел ввиду не многопоточность, а MT vs MD, или это не имеет значения?
Кстати, в 2008й студии я не увидел опции рантайма ST через стандартные настройки проекта толькоо вариации с мульти-


C>export "C" и __stdcall. Слово FAR осталось где-то там, далеко, в 1995 году, в 16-битном мире.


C>И экспорт через .def-файл, а не новомодными __declspec(export)’ами.


Понял, спасибо
Re[3]: Pascal + C++
От: Centaur Россия  
Дата: 20.07.11 14:08
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Я имел ввиду не многопоточность, а MT vs MD, или это не имеет значения?


Хотите таскать за собой .DLL’ку сишного рантайма — берите MD.
Re[4]: Pascal + C++
От: Аноним  
Дата: 20.07.11 14:41
Оценка:
Здравствуйте, Centaur, Вы писали:

C>Хотите таскать за собой .DLL’ку сишного рантайма — берите MD.


Понял.

А для чего тогда конфигурация MD существует, просто интересно...
Re[5]: Pascal + C++
От: Кодёнок  
Дата: 21.07.11 06:06
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Понял.

А>А для чего тогда конфигурация MD существует, просто интересно...

Чтобы юзер любовался вот этим:

Re[6]: Pascal + C++
От: Аноним  
Дата: 21.07.11 07:00
Оценка:
Здравствуйте, Кодёнок, Вы писали:

Кё>Здравствуйте, Аноним, Вы писали:


А>>Понял.

А>>А для чего тогда конфигурация MD существует, просто интересно...

Кё>Чтобы юзер любовался вот этим:


короче для снижения веса программы и вынос общих модулей в одно место под названием redistributablя
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.