Показать сообщение отдельно
Старый 03.02.2011, 21:13   #293
Местный
 
Аватар для supernewbie
 
Регистрация: 23.09.2009
Сообщений: 1,232
Сказал Спасибо: 119
Имеет 172 спасибок в 134 сообщенях
supernewbie пока неопределено
По умолчанию

heapalloc? это освободить?

Добавлено через 2 минуты
че-то не похоже) так, щас сделаю по-нормальному, потому что вроде работает

Добавлено через 5 минут
delphi Код:
procedure ParsingFromServer(curpck:PNetworkPacket); stdcall; var   p:pointer;   b:byte;   i:cardinal;   s,s1:string; begin   VirtualAlloc(@s,150000,0,0);   VirtualAlloc(@s1,1500,0,0);   with curpck^ do   begin   s:=inttohex(ID,2)+' ';   if id2<>-1 then   begin   s1:=inttohex(ID2,4);   s:=s+s1[3]+s1[4]+' '+s1[1]+s1[2]+' ';   end;   for i:=0 to size-1 do   begin   p:=Pointer(cardinal(curpck.data)+i);   b:=Byte(p^);   s:=s+inttohex(b,2)+' ';   end;   writeln('FromServer:'+s);   end; end;

критки, как правильно выделять память? 1 раз выделить? тогда как проверить что у строк не выделенна память?

Добавлено через 4 минуты
помогите, госпади, за что мне это((

Добавлено через 10 минут
эпик

2011.2.3 22:02:36
OS : Windows XP x64 5.2 (Build: 3790)
CPU : AuthenticAMD AMD Athlon(tm) 64 X2 Dual Core Processor 6000+ @ 3017 MHz 4094MB RAM
Video : NVIDIA GeForce 9800 GT (9745)
PosCode : LS2(216) 47896:186808:-3486 2/1 [392]

Insufficient Memory.
Please check the Virtual Memory Option and avilable hard drive space.
You can check them by going to : Control Panel->System->Advanced->Performance->Settings->Advanced->Virtual memory.

History: FMallocWindows::Malloc <- Size 1081728 FArray <- FMallocWindows::Realloc <- 00000000 1081728 FArray <- FArray::Realloc <- 90144*12 <- ATerrainInfo::UpdateVertices <- ATerrainInfo::UpdateVTGroup <- ATerrainInfo::PostLoad <- UObject::ConditionalPostLoad <- (TerrainInfo 21_24.TerrainInfo0) <- PostLoadObjects <- UGameEngine::LoadMapThread::ActorLoading <- UGameEngine::LoadMapThread <- RunLoadMap <- MessagePump <- MainLoop

Добавлено через 50 секунд
ПАНИКА, ЧТО ДЕЛАТЬ ГОСПАДИ

Добавлено через 4 минуты
добавил в begin end.
VirtualAlloc(@s,150000,0,0);
VirtualAlloc(@s1,150000,0,0); и сделал s и s1 глобальными переменными

delphi Код:
procedure ParsingFromServer(curpck:PNetworkPacket); stdcall; var   p:pointer;   b:byte;   i:cardinal; begin   s:='';   with curpck^ do   begin   s:=inttohex(ID,2)+' ';   if id2<>-1 then   begin   s1:=inttohex(ID2,4);   s:=s+s1[3]+s1[4]+' '+s1[1]+s1[2]+' ';   end;   if size>0 then   for i:=0 to size-1 do   begin   p:=Pointer(cardinal(curpck.data)+i);   b:=Byte(p^);   s:=s+inttohex(b,2)+' ';   end;   writeln('FromServer:'+s);   end;   s:=''; end;

всё равно криты, но уже о том что ошибка в обработке какого-то пакета

Добавлено через 1 минуту
помогите

Добавлено через 5 минут
понял, крит будет через n-ое кол-во пакетов, 100%, и это странно
__________________
Начало.

Последний раз редактировалось supernewbie, 03.02.2011 в 21:13. Причина: Добавлено сообщение
supernewbie вне форума   Ответить с цитированием