Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];

Вниз

DLL & Packages   Найти похожие ветки 

 
LinaIns   (2005-02-12 07:21) [0]

В программе нужно использовать плагины, которые постоянно обмениваются с основной программой динамическими массивами. Реализовала на DLL"ках, но некоторые юзеры ругаются, что иногда программа выдает ошибку (хотя свои функции выполняет).

Предлагали сделать все на Packages, которые при выполнении находятся с программой в одной области памяти и поэтому не требуют геммороя с разделением.

Насколько их использование увеличивает размер конечной программы и объем оперативной памяти, которую она занимает?


 
Eraser ©   (2005-02-12 11:42) [1]

Зачем изобретать велосипед, если он уже изобретён?
Передавай параметры, не в динамических масивах, а через PCHAR.
Или в крайнем случае используй модуль ShareMem.


 
olookin ©   (2005-02-13 15:33) [2]

[1] Eraser ©   (12.02.05 11:42)
>>Передавай параметры, не в динамических масивах, а через PCHAR.

А массивы чисел тоже через PChar?

LinaIns   (12.02.05 07:21)

Лично я в фукнцию бибилиотеки передаю указатель на массив, а не сам массив. Что несколько усложняет код в программе-вызывальщице, но зато работает без ошибок.


 
MBo ©   (2005-02-13 15:43) [3]

>которые при выполнении находятся с программой в одной области памяти
Проблема не в этом. DLL тоже работает, если можно так сказать, в адресном пространстве процесса, который ее использует.
Дело в том, что при работе с динамическими массивами и длинными строками должен быть общий менеджер памяти  - для этого используется ShareMem (о чем написано в комментарии при создании новой DLL), либо пакеты.


 
Eraser ©   (2005-02-13 16:25) [4]

olookin ©
А массивы чисел тоже через PChar?
Лично я в фукнцию бибилиотеки передаю указатель на массив, а не сам массив.


PChar это и есть указатель на массив байт.
Не обязательно использовать именно PChar.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.071 c
1-1108363949
Mishenka
2005-02-14 09:52
2005.02.27
Отображаемые файлы или потоки?


14-1107837578
Duddits
2005-02-08 07:39
2005.02.27
Кто кого сильнее: Мелкософт или Гугль?


4-1105612676
Ilya___
2005-01-13 13:37
2005.02.27
Подскажите, где можно взять алгоритм печати TBitmap на принтер,


1-1108419383
РеФорм
2005-02-15 01:16
2005.02.27
Как сделать функцию типа format, только чтобы не в текст


6-1096972146
Zeqfreed
2004-10-05 14:29
2005.02.27
SSL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский