Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.05.15;
Скачать: CL | DM;

Вниз

Выделить память в dll   Найти похожие ветки 

 
Test_unit   (2011-02-07 18:41) [0]

Здравствуйте. Такая проблема. Имеется буффер pbyte. Я хочу чтоб он иницелизировался в моей длл. Вроде как иницилизируется но при фреемем прога валится. Что я делаю не так? Вот код.

/////////////////////Project2.dll/////////////////

procedure test (Buff:pbyte;Size:integer) ;STDCALL;
begin
if Buff <> nil then  Buff      := nil;
 ReAllocMem(Buff, Size);
end;
///////////////////////////////////////////////////

////////////////////////Программа///////////////////////

procedure test(Buff:pbyte;Size:integer); STDCALL; external "Project2.dll";

........

procedure TForm1.Button1Click(Sender: TObject);
var
P:pbyte;
begin
  test(p,1000000);
  freemem(p);
  p:=nil;
end;


 
Игорь Шевченко ©   (2011-02-07 18:43) [1]


> Что я делаю не так?


Не читаешь комментарий в проекте DLL


 
Test_unit   (2011-02-07 18:47) [2]

Это про borland.dll ? Читал.. А если я захочу заюзать свою длл в другом проекте на другом ЯП. Тут как быть? Постоянно с собой таскать эту длл?


 
Игорь Шевченко ©   (2011-02-07 18:51) [3]


>  Читал..


Еще раз прочитай.


> Тут как быть?


HeapAlloc/HeapFree, VirtualAlloc/VirtualFree


 
_Юрий   (2011-02-07 19:27) [4]


> Вроде как иницилизируется но при фреемем прога валится.
> Что я делаю не так?


У проги и библиотеки по умолчанию разные менеджеры памяти.
Ты у одного менеджера запросил память, а другому приказываешь ее освободить.



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

Текущий архив: 2011.05.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.008 c
15-1296736261
Smile
2011-02-03 15:31
2011.05.15
Тем, у кого есть немного свободного времени:)


2-1297255354
young_delphi_coder
2011-02-09 15:42
2011.05.15
проверить наличие разделителя в строке пути


2-1296568705
Rembo
2011-02-01 16:58
2011.05.15
Обмен пакетами между сервером и клиентом


2-1297089446
Сергей
2011-02-07 17:37
2011.05.15
Как расширить чужой ActiveX?


1-1253856818
sdsk
2009-09-25 09:33
2011.05.15
Форма с фиксированной частью экрана