Вниз
Скачать: CL | DM;

Возврат данных из DLL   Найти похожие ветки 

← →
Andy_   (2003-01-21 11:22) [0]

Здравствуте Мастера !
Помогите с проблемой, есть некая функция, расположенная в DLL которая получает положим строку что то с ней делает и возращает строковый результат, проблема в том что нужно обойтись во входных выходный параметрах без String, а длина результата не изместна перед вызовом, по этому и PChar память не выделешь, как быть ?


← →
Smithson ©   (2003-01-21 11:25) [1]

PChar - это указатель на С-строку (то бишь, в терминологии Windows lpzASCII). Посему для него не обязательно знать длинну, ее можно найти. GlobalAlloc и вперед.


← →
Reindeer Moss Eater   (2003-01-21 11:27) [2]

Распределяй память под строку в приложении.
Передавай в DLL PChar.
В DLL перераспределяй память под строку (SetLength)
Возвращай в приложение PChar.


← →
Andy_   (2003-01-21 11:32) [3]

то что длину найти можно это понятно, но перед вызовом функции нужно ж длину указать
P := StrAlloc(10);
MyFunc(P); <- вот здесь изменится размер строки
.....


← →
Andy_   (2003-01-21 11:35) [4]

>> Reindeer Moss Eater
Логично, спасибо большое :-)



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
3-96607
chum
2003-01-13 08:58
2003.01.30
Функция BDE: DbiDoRestructure


3-96622
YurikV
2003-01-14 09:57
2003.01.30
ODBC & Access


6-96933
Эндрю2
2002-10-17 23:55
2003.01.30
Закрыть все открытые диски или папки на доступ


1-96818
Sergey_El'f
2003-01-20 16:33
2003.01.30
Возврат в приложение после CreateProcess


1-96646
denis24
2003-01-21 12:29
2003.01.30
анимированный *.gif




   Наверх