Проблема с выделением памяти в куче
Добавлено: 29 апр 2004, 08:38
Если не трудно помогите разобраться.
Происходит следующее. Если в СОМ объекте выделить память а в клиенте ее освобождать, то отладчик вываливается при проверке кучи в момент освобождения памяти.
аналог кода такой:
в СОМ:
fn([out, retval] long *pVal)
{
*pVal=(long) new BYTE[100]
return OK;
}
В клиенте:
BYTE *pData=fn();
delete []pData;
на синтаксис внимание не обращайте, используюся wrapped классы для позднего связывания.
сервер подключается как LOCAL_SERVER
О причине я догадываюсь, но можно ли от этого избавиться незнаю.
Происходит следующее. Если в СОМ объекте выделить память а в клиенте ее освобождать, то отладчик вываливается при проверке кучи в момент освобождения памяти.
аналог кода такой:
в СОМ:
fn([out, retval] long *pVal)
{
*pVal=(long) new BYTE[100]
return OK;
}
В клиенте:
BYTE *pData=fn();
delete []pData;
на синтаксис внимание не обращайте, используюся wrapped классы для позднего связывания.
сервер подключается как LOCAL_SERVER
О причине я догадываюсь, но можно ли от этого избавиться незнаю.