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

StrAlloc на АПИ   Найти похожие ветки 

← →
Виктор007   (2007-08-22 09:56) [0]

Переписываю одну функцию на АПИ, и там попалась StrAlloc, на что можно её заменить?


← →
clickmaker ©   (2007-08-22 09:59) [1]

LocalAlloc, HeapAlloc


← →
Сергей М. ©   (2007-08-22 10:00) [2]

Ни на что.

StrAlloc - функция высокоуровневого менеджера памяти, специфичного для конкретной ран-тайм среды исполнения.

В WinAPI есть только низкоуровневые инструменты управления вирт.памятью.


← →
Сергей М. ©   (2007-08-22 10:16) [3]


> Виктор007


Но можно в кач-ве альтернативы использовать любую сишную ран-тайм-библиотеку msvcrXX.dll, в составе которой обязательно есть высокоуровневый менеджер памяти с функциями аллокации/реаллокации/освобождения блоков памяти.


← →
DVM ©   (2007-08-22 11:00) [4]


> и там попалась StrAlloc, на что можно её заменить?

GetMem вполне ее заменит. Правда GetMem она не из WinApi, но тебе подойдет скорее всего.


← →
Виктор007   (2007-08-22 11:18) [5]

Простите, недодумался посмотреть в sysutils :)

function StrAlloc(Size: Cardinal): PChar;
begin
 Inc(Size, SizeOf(Cardinal));
 GetMem(Result, Size);
 Cardinal(Pointer(Result)^) := Size;
 Inc(Result, SizeOf(Cardinal));
end;

Лежу в больнице под сильнодействующими препаратами. Очень сильно мешает программировать :(


← →
Dimaxx ©   (2007-08-23 11:01) [6]

Так мож бросишь пока это дело до выздоровления? ;)


← →
DrPass ©   (2007-08-23 11:13) [7]


> Так мож бросишь пока это дело до выздоровления? ;)

Пусть пишет. Под действием трамадола порой рождаются гениальные вещи


← →
Leonid Troyanovsky ©   (2007-08-23 13:23) [8]


> Виктор007   (22.08.07 09:56)
 
> Переписываю одну функцию на АПИ, и там попалась StrAlloc,
>  на что можно её заменить?

SetLength
Со строками работать удобней, если они string.

--
Regards, LVT.



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

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



Память: 0.46 MB
Время: 0.017 c
2-1187699429
Dmitriy507
2007-08-21 16:30
2007.09.16
проблема с cmd.exe


15-1187442256
Ricks
2007-08-18 17:04
2007.09.16
Еще немного прикольного видео


15-1187333519
lehich
2007-08-17 10:51
2007.09.16
6+5+4+3+2+1=????


2-1187690877
ILPU
2007-08-21 14:07
2007.09.16
Нужна помощь!


2-1187544827
Bast
2007-08-19 21:33
2007.09.16
Криптовщик




   Наверх