Форум: "Основная";
Текущий архив: 2010.03.21;
Скачать: [xml.tar.bz2];
ВнизShareMem: конфликт версий Найти похожие ветки
← →
RWolf © (2009-05-24 14:28) [0]Есть программа на D5, которая загружает DLL, собранную под 2009. При выгрузке DLL-ки получаем AV. По-видимому, это связано с разными версиями ShareMem, так как DLL-ка, скомпилированная под той же D5, выгружается корректно.
Как правильнее всего будет обойти ситуацию? Есть ли способ согласовать менеджеры памяти приложения и библиотеки, собранных под разными версиями Delphi, или нужно смотреть в сторону отказа от ShareMem?
← →
RWolf © (2009-05-24 14:33) [1]да, пробовал тестировать приложение с библиотеками borlndmm.dll из обоих дистрибутивов Delphi, проблема повторяется.
← →
Palladin © (2009-05-24 14:33) [2]
> или нужно смотреть в сторону отказа от ShareMem?
нужно
← →
Slym © (2009-05-24 17:40) [3]RWolf © (24.05.09 14:28)
попробуй другой менеджер памяти... FastMem
← →
RWolf © (2009-05-24 18:03) [4]
> попробуй другой менеджер памяти... FastMem
FastMM?
Нашёл ещё страничку менеджера FastShareMem.
← →
DVM © (2009-05-24 23:40) [5]
> RWolf ©
А что библиотека то делает? Может, действительно ShareMem то и не нужен?
← →
Slym © (2009-05-25 05:30) [6]RWolf © (24.05.09 18:03) [4]
FastMM
он самый... у него в комплекте есть замена для borlndmm.dll
← →
RWolf © (2009-05-25 16:58) [7]
> А что библиотека то делает? Может, действительно ShareMem
> то и не нужен?
Библиотека обменивается с приложением строками.
← →
oxffff © (2009-05-25 17:18) [8]
> RWolf © (25.05.09 16:58) [7]
Ну дык а как объявлены строки в DLL наd2009?
Какой у них тип?
ansistring? или UnicodeString?
← →
DVM © (2009-05-25 17:35) [9]
> RWolf © (25.05.09 16:58) [7]
> Библиотека обменивается с приложением строками.
Откажись от string в пользу PCHAR и обменивайся на здоровье. А еще лучше сделать так, чтобы память под строку выделяла не библиотека, а приложение, тогда вообще все будет замечательно.
← →
RWolf © (2009-05-26 11:34) [10]
> Ну дык а как объявлены строки в DLL наd2009?Какой у них
> тип?ansistring? или UnicodeString?
строки — ansistring в 2009 и string в пятёрке.
> Откажись от string в пользу PCHAR и обменивайся на здоровье.
можно, но неудобно; если есть полноценная замена sharemem, то я предпочел бы не переделывать интерфейс.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2010.03.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c