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

Вниз

Ошибка при вызове ReallocMem в ассемблере   Найти похожие ветки 

 
Defunct ©   (2005-08-02 10:56) [40]

TProgrammer   (02.08.05 02:04) [39]
> Потому как половина функций из модуля SysUtils, используют в ассемблерных вставках вызовы дельфийских функций.

Правда? А с каких это пор модуль SysUtils стал входить в состав VCL? И второе попробуй найди в модуле SysUtils хотя бы один вызов delphiшной функции, а не ассемблерной вставки.

> На ночь не перечитываешь ?
нет, просто злопамятный.


 
TProgrammer   (2005-08-02 11:54) [41]


Правда? А с каких это пор модуль SysUtils стал входить в состав VCL?

Согласен, описался, не VCL - а RTL. Это что-то меняет ?

И второе попробуй найди в модуле SysUtils хотя бы один вызов delphiшной функции, а не ассемблерной вставки.
Легко. Например функция FormatBuf вызывает дельфийскую FormatError.


 
Defunct ©   (2005-08-02 12:06) [42]

TProgrammer   (02.08.05 11:54) [41]

> Это что-то меняет ?

Да разумеется, фактически полностью отменяет твое предыдущее высказывание:

> И пойди расскажи свои прописные истины программистам Borland"a, которые к твоим "истинам" не особо не прислушивались когда писали VCL.


> Например функция FormatBuf вызывает дельфийскую FormatError.
Частный случай, где не требуется высокая скорость. Причем на поиски которого у тебя ушел почти час ;>


 
TProgrammer   (2005-08-02 14:53) [43]


> > И пойди расскажи свои прописные истины программистам Borland"a,
> которые к твоим "истинам" не особо не прислушивались когда
> писали VCL.

Ок. Тогда пойди расскажи свои прописные истины тем программистам Borland"a, которые к твоим "истинам" не особо не прислушивались когда писали RTL.


> Частный случай, где не требуется высокая скорость. Причем
> на поиски которого у тебя ушел почти час

Частный ? Это первое что бросилось в глаза в течении 1 минуты. Не нравиться SysUtils - открой System - там полно вызовов именно GetMem / ReallocMem на которые ты наехал, базируясь на своих "прописных истинах".

p.s. Насчет часа поисков - это ты телепатией определил ? Или ты думаешь, что мне больше делать нечего как только в форуме сидеть ?


 
Defunct ©   (2005-08-02 15:31) [44]

TProgrammer   (02.08.05 14:53) [43]

> Тогда пойди расскажи свои прописные истины тем программистам Borland"a,

RTL, в частности System и SysUtils годами не модифицировались. И код в них мягко сказать "подгулявший". Не думаю что borland"овцам надо что-то пояснять, они и так это прекрасно знают. Только пользуются еще одной прописной истиной - "лучшее враг хорошего"/"не сломалось - не чини".

> Частный ? Это первое что бросилось в глаза в течении 1 минуты.

Первое что попалось на глаза после долгих поисков, будет справедливее сказано.


> Не нравиться SysUtils - открой System - там полно вызовов именно GetMem / ReallocMem на которые ты наехал, базируясь на своих "прописных истинах
 

Не полно, а всего 1 на два приведенных тобой модуля:
в System - 1 вызов, в SysUtils - 0.

от того, что этот один вызов имеет место в модуле System (сделанный кстати не от хорошей жизни, а от того что в System аж 4 разных ReallocMem), совсем не значит что надо так делать.

> p.s. Насчет часа поисков - это ты телепатией определил ?
интуиция + логика меня редко подводят, можешь называть это телепатией.


 
TProgrammer   (2005-08-02 15:48) [45]


> RTL, в частности System и SysUtils годами не модифицировались.

Эта типа шутка такая ? Если нет - то пойди сравни код System от версии к версии изменяется очень сильно.


> Первое что попалось на глаза после долгих поисков, будет
> справедливее сказано.

Опять ИМХО забываешь ставить - телепат из тебя никакой, прими это к сведению.


> Не полно, а всего 1 на два приведенных тобой модуля:
> в System - 1 вызов, в SysUtils - 0.

Интересные у тебя модули, у меня в D6 в System 4 вызова GetMem бросились в глаза сразу, считать полное количество мне совсем не хочеться.


> (сделанный кстати не от хорошей жизни, а от того что в System
> аж 4 разных ReallocMem), совсем не значит что надо так делать.
>

И совсем не значит, что так делать нельзя - и это плохой стиль.


> интуиция + логика меня редко подводят, можешь называть это
> телепатией.

Интуиция и логика у тебя хреновые, если думаешь, что искать ассемблерный вызов в модуле занимает час.


 
Defunct ©   (2005-08-02 16:14) [46]

> Если нет - то пойди сравни код System от версии к версии изменяется очень сильно.

Ты же моим словам все равно не веришь. Для чего же предлагаешь мне сравнивать?
Если хочешь убедиться - интереснейшую затею по сравнению кода сделай сам, не получится тогда обращайся за помощью. Кстати, при сравнении ты заметишь как от более ранних версий к более поздним количество вызовов (да и самих асм вставок) уменьшалось.

> Опять ИМХО забываешь ставить - телепат из тебя никакой, прими это к сведению.

Нет повода верить твоим отмазкам.

> Интересные у тебя модули,
стандартные модули. Ты читай внимательней, говорил я про ReallocMem, GetMem не надо приплетат, о нем другой разговор.

> И совсем не значит, что так делать нельзя
Приведи хотя бы одну мою цитату, где я говорил, что так делать нельзя. Привести ты ее не сможешь, поэтому иногда лучше жевать.

> Интуиция и логика у тебя хреновые, если думаешь, что искать ассемблерный вызов в модуле занимает час.

я очень рад за тебя, что ты на решение этой задачи потратил меньше часа. Налицо прогресс.


 
TProgrammer   (2005-08-02 16:45) [47]


> Ты же моим словам все равно не веришь. Для чего же предлагаешь
> мне сравнивать?

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


> при сравнении ты заметишь как от более ранних версий к более
> поздним количество вызовов (да и самих асм вставок) уменьшалось.

Ну учитывая, что System дельфи 3 был практически полностью написан на ассемблере, трудно возразить. Количество вызов же  уменьшалось исключительно пропорционально количеству асм вставок и не более того. Но речь не идет о том использовать асм или нет, а о том, что ты утверждаешь, что использование вызовов дельфийских функций из асма - плохой тон.


> стандартные модули. Ты читай внимательней, говорил я про
> ReallocMem, GetMem не надо приплетат, о нем другой разговор.

Другой разговор ? То есть его вызывать можно, а другие функции нельзя ? Интересная и удобная логика.


> Нет повода верить твоим отмазкам.

Мне вообще плевать во что ты там веришь. Твои отмазки ничуть не лучше.


> Приведи хотя бы одну мою цитату, где я говорил, что так
> делать нельзя. Привести ты ее не сможешь, поэтому иногда
> лучше жевать.

Лучше тебе тоже пожевать, чем цитировать фразы не до конца.


> я очень рад за тебя, что ты на решение этой задачи потратил
> меньше часа. Налицо прогресс.

Налицо тут только твой примитивный и убогий сарказм.


 
Mx ©   (2005-08-02 16:55) [48]

Мда... Когда начнем сиськи обсуждать?


 
Defunct ©   (2005-08-02 21:21) [49]

Mx ©   (02.08.05 16:55) [48]

Если вдруг TProgrammer скажет, что у него классные сиськи, так и начнем их обсуждать, пока он такой возможности мне не предоставил :)

А вообще TProgrammer - "классный пацан" (C) Сара Коннор, нравится мне его манера ответов, вижу в нем свое зеркальное отражение.

TProgrammer   (02.08.05 16:45) [47]
Но речь не идет о том использовать асм или нет, а о том, что ты утверждаешь, что использование вызовов дельфийских функций из асма - плохой тон.


Да утверждаю, и ты даже вроде как согласился в [45]. Если же нет, тогда у тебя есть ошибки стилистики. (пиши грамотней)

> чем цитировать фразы не до конца.
Твоя мысль там процитирована ровно настолько насколько я ее понял по расставленным тобой знакам препинания.

> Налицо тут только твой примитивный и убогий сарказм.
Вовсе нет, я правда рад, что человек, два месяца назад неумевший нормально создать форму, уже умеет читать асм код. Искрене за тебя рад.


 
TProgrammer   (2005-08-02 22:14) [50]


> Да утверждаю, и ты даже вроде как согласился в [45]. Если
> же нет, тогда у тебя есть ошибки стилистики. (пиши грамотней)

Это у тебя ошибки понимания (учись логике)

Мое мнение - я считаю, что применение ассемблера вообще не слишком оправдано, особенно в свете постепенного продвижения идеи мультиплатформенности в т.ч. и Borland"ом. Но если уж идет применение asm вставок, то вызов из них дельфийских функций, в особенности функций MemoryMenager"а.


> Твоя мысль там процитирована ровно настолько насколько я
> ее понял по расставленным тобой знакам препинания.

Еще одно непонимание.


> Вовсе нет, я правда рад, что человек, два месяца назад неумевший
> нормально создать форму, уже умеет читать асм код.

Я тебе по секрету скажу - я его еще и писать умею. А ты так до сих пор и не въехал в проблему 2-х месячной давности - сказать тут больше нечего.


> Искрене за тебя рад.

Взаимно.


 
Mx ©   (2005-08-02 22:33) [51]

Гы, прикольно, продолжайте в том же духе! Вот же до чего доводит ошибка в маленькой ассемблерной вставке :)


 
Defunct ©   (2005-08-02 22:34) [52]

> Это у тебя ошибки понимания (учись логике)
Которой логике? Если ты пишешь неграмотно.
"Казнить, нельзя помиловать."
"Казнить нельзя, помиловать."
прочитай теперь свое произведение [45].
> И совсем не значит, что так делать нельзя - и это плохой стиль.

> Еще одно непонимание.
Проблема объясняющего.

>> два месяца назад неумевший  нормально создать форму, уже умеет читать асм код.
> Я тебе по секрету скажу - я его еще и писать умею.

голословное утверждение. Тебе что-то сказать - что в лужу плюнуть.

> А ты так до сих пор и не въехал в проблему 2-х месячной давности - сказать тут больше нечего.
Проблема была твоя, причем надуманная. Я же не обязан помнить твои надуманные проблемы по два месяца. Других более важных дел хватает.


 
TProgrammer   (2005-08-02 23:07) [53]


> Проблема объясняющего.

Твое непонимание - не моя проблема.


> Тебе что-то сказать - что в лужу плюнуть.

Мне твое мнение как-то вообще пофигу.


> Проблема была твоя, причем надуманная. Я же не обязан помнить
> твои надуманные проблемы по два месяца. Других более важных
> дел хватает.

Сам себе противоречишь. Ты первый об этом вспомнил. На кой вспоминаешь то, что не помнишь и не понял ?


 
Defunct ©   (2005-08-02 23:12) [54]

> Мое мнение - я считаю, что применение ассемблера вообще не слишком оправдано, особенно в свете постепенного продвижения идеи мультиплатформенности в т.ч. и Borland"ом.

смотря для каких задач. Кто-то же пишет ОС и не под каждую платформу можно найти такую ОС как нужно по приемлемой цене.

Но если уж идет применение asm вставок, то вызов из них дельфийских функций, в особенности функций MemoryMenager"а.

1. MemoryManager.
2. Ты не закончил свою мысль. (то ли вызов функций MM оправдан, то ли наоборот). При этом ты говоришь о самом MM так, как-будто он написан на Delphi. Загляни в ту же реализацию ReallocMem;external;cdecl и _ReallocMem().


 
Defunct ©   (2005-08-02 23:24) [55]

> Твое непонимание - не моя проблема.
В этом случае только твоя.
Если бы я лез к тебе с вопросам, тогда это мое непонимание. А если ты пишешь о чем-то неоднозначно, то это уже только твоя проблема.

> Мне твое мнение как-то вообще пофигу.
так зачем тогда споришь?

> На кой вспоминаешь то
чтобы испортить тебе настроение.


 
TProgrammer   (2005-08-02 23:36) [56]


> В этом случае только твоя.

А я и не знал, что у меня есть проблема с твоим пониманием, спасибо, что просветил.


> так зачем тогда споришь?

Чтобы другие не воспринимали тебя всерьез.


> чтобы испортить тебе настроение.

Чтобы испортить мне настроение нужно больше, чем один неудачный клоун. Меня все это просто развлекает - это вторая причина, почему я спорю :)


 
TProgrammer   (2005-08-02 23:41) [57]


> смотря для каких задач. Кто-то же пишет ОС и не под каждую
> платформу можно найти такую ОС как нужно по приемлемой цене.

Кто-то пишет ОС на Delphi ? Или мы уже говорим о всех языках программирования ?


> Ты не закончил свою мысль.

Упс. Заканчиваю - вызовы MM оправданы, равно как и вызовы чисто дельфийских процедур.


> Загляни в ту же реализацию ReallocMem

Однако ты прицепился именно к ReallocMem.


 
Mx ©   (2005-08-02 23:57) [58]


> TProgrammer   (02.08.05 23:41) [57]
> Однако ты прицепился именно к ReallocMem.

Ну это хотя бы по теме :)


> Defunct ©   (02.08.05 23:12) [54]
> При этом ты говоришь о самом MM так, как-будто
> он написан на Delphi

Стоп. А если заглянуть в GetMem.inc?


 
Defunct ©   (2005-08-02 23:59) [59]

> А я и не знал, что у меня есть проблема с твоим пониманием, спасибо, что просветил.

У тебя проблема с изложением мысли, а не с моим пониманием.

> Чтобы другие не воспринимали тебя всерьез.
:)

> Чтобы испортить мне настроение нужно больше, чем один неудачный клоун. Меня все это просто развлекает - это вторая причина, почему я спорю :)

Представляешь, это и моя причина по которой я с тобой общаюсь ;)

> Кто-то пишет ОС на Delphi ? Или мы уже говорим о всех языках программирования ?

Уже об асм(ах) как таковых.

> Упс. Заканчиваю - вызовы MM оправданы, равно как и вызовы чисто дельфийских процедур.

На что идет вполне обоснованная желание взглянуть на твой код, где ты выполняешь такие оправданные вызовы, чисто делфишных процедур. Приведешь или у тебя нечего привести? Приведи хотя бы ради того чтобы тебя всерьез воспринимали.


> Однако ты прицепился именно к ReallocMem.
см [32].


 
Defunct ©   (2005-08-03 00:07) [60]

Mx ©   (02.08.05 23:57) [58]
> Стоп. А если заглянуть в GetMem.inc?

Половина функций kernel все остальное на Delphi. Кстати, хороший пример, ни одной асмовской вставки и ни одного вызова Delphiшной процедуры из асм вставки.


 
TProgrammer   (2005-08-03 00:18) [61]


> Уже об асм(ах) как таковых.

Видимо это ты говоришь об асмах. Я же продолжаю говорить о делфи и асмовких вставках в дельфийском коде.


> На что идет вполне обоснованная желание взглянуть на твой
> код, где ты выполняешь такие оправданные вызовы, чисто делфишных
> процедур. Приведешь или у тебя нечего привести?

Я пропустил то место где я утверждал, что я это применяю ? Мне подобные конструкции нужны не были, но если бы понадобились, то применил бы. Зато я тебе привел примеры применения этого в коде RTL.


> см [32].

См. модуль System. Или ему тоже грош цена. Ты видимо считаешь, что написал бы лучше.


 
Mx ©   (2005-08-03 00:41) [62]


> Defunct ©   (03.08.05 00:07) [60]
> Половина функций kernel все остальное на Delphi

Это не говорит о том, что MM написан не на Delphi. Да, он юзает ядро, но! Во-первых, а как иначе в защищенной ОС? Во-вторых, по такой логике ВСЕ проги под Windows написаны на C.


> ни одной асмовской вставки

Послушай, я использовал ассемблер только с целью избежать различных shl/shr, так как там много всякой фигни. Доступ к биту думаю проще реализовать в виде простой BT, чем в виде Result := (N and M = M), где M еще надо подсчитать. Память я никак не смогу выделить на "чистом" ассемблере, к тому же вызов ReallocMem впоследствии производился по-условию.


 
Defunct ©   (2005-08-03 00:58) [63]

> Видимо это ты говоришь об асмах. Я же продолжаю говорить о делфи и асмовких вставках в дельфийском коде.

Понимаешь ли, когда ты заговорил о многоплатформенности, мне ничего не оставалось как говорить об асм(ах) вообще. Хочешь говорить о вставках - не вопрос, но тогда мы не выходим за рамки IA32/Win32/Delphi

> Я пропустил то место где я утверждал, что я это применяю ?
Ты нигде не говорил, что применяешь, то что приветствуешь и оправдываешь. Я сделал такой вывод лишь потому, что:
1. Чел оспаривает [32].
2. Чел говорит, что пишет на асме.
3. Чел говорит, что вызовы Delphiшных функций из асм вставок оправданы.
Логично предположить раз он так уверенно об этом говорит, значит он "собаку съел" в этом вопросе. Следовательно у него есть примеры, собственного кода, где без таких вызовов либо нельзя было обойтись, либо отказ от таких вызовов значительно усложнил бы код.

> Мне подобные конструкции нужны не были, но если бы понадобились, то применил бы.

Слишком много "бы". Я же в отличие от тебя имел дело с такими "конструкциями", и зачастую они ни к чему хорошему не приводят. Ни выигрыша в производительности, ни экономии времени при написании программы, лиш только добавляют сложности и глюков при модификации программы. Поэтому я утверждаю [32].

> Зато я тебе привел примеры применения этого в коде RTL.
RTL это не показатель. Это написанная библиотека сотнями разных программистов, которые дописывали определенные куски в разное время. Кому-то было удобнее сделать вызов в асм вставке, кому-то - написать на Delphi, в итоге получилось то, что есть. Главное что оно работает, поэтому его и не трогают.

> См. модуль System. Или ему тоже грош цена.
Да - написан кривовато, да - не подходит в качестве эталона для программистов. Но он работает, отлажен и вылизан в этом его ценность.

> Ты видимо считаешь, что написал бы лучше.
Знаю одно писал бы долго, с перерывами, после перерывов стиль бы изменялся и появлялась бы кривизна. И знаю другое - никогда бы не взялся его переписывать - макачий труд.
Забесплатно его переписывать не будет никто. Платить за переделываение System.pas тоже никто не будет. Поэтому тут даже и говорить не о чем, используем уж какой есть.


 
Defunct ©   (2005-08-03 01:05) [64]

Mx ©   (03.08.05 00:41) [62]

Доступ к биту лучше всего делать по заранее подготовленным маскам. Создаете 64 маски (32 на Or и 32 на And) и все - задача решена.

> Память я никак не смогу выделить на "чистом" ассемблере, к тому же вызов ReallocMem впоследствии производился по-условию.

для битовых полей не надо было даже и память выделять. просто задавать на входе уже подготовленный буфер. (выделение памяти очень ресурсоемкая процедура в сравнении с одной битовой операцией)


 
Mx ©   (2005-08-03 01:14) [65]


> Defunct ©   (03.08.05 01:05) [64]
> для битовых полей не надо было даже и память выделять

А когда каждый байт на счету, когда количество битов заранее неизвестно, когда этих элементов тысячи, а то и миллионы?


 
TProgrammer   (2005-08-03 01:14) [66]


> Я же в отличие от тебя имел дело с такими "конструкциями",
> и зачастую они ни к чему хорошему не приводят. Ни выигрыша
> в производительности, ни экономии времени при написании
> программы, лиш только добавляют сложности и глюков при модификации
> программы.

Тут все зависит от профессиональности программиста, который эти вставки делает. Можно и на асме написать так, что работать будет тормознее, чем на делфи. А можно написать и с вызовом GetMem"а, и работать будет быстрее, чем тоже но на делфи. Если уж писать процедуру на асме, то всю - и если при этом требуется выделить память, то почему не вызвать GetMem или ReallocMem ? Вопросы глючности и трудночитаемости кода - это вопросы профессионализма программиста, а не применяемой технологии.

А что касается твоего профессионализма, то тут есть сомнения. Вот увидел в форуме твой кусок кода из рабочего(!) проекта - прямо удивился - и этот человек учил меня формы создавать:

Defunct ©   (30.07.05 21:55) [13]

Вот отрыл в рабочем проекте:

procedure UploadFileThroughISP( ACallingProcessHandle : DWord;
                                FileName: ShortString );stdcall;
begin
 if ACallingProcessHandle <> 0 then
    Application.Handle := ACallingProcessHandle;

 with TISPProgrammerForm.Create( nil ) do
 begin
    fFileName := FileName;
    L_FName.Caption := ExtractFileName( FileName );
    ShowModal;
 end
end;


И где у тебя разрушается созданный экземпляр TISPProgrammerForm ? Вот это я называю писать через ж...


 
Defunct ©   (2005-08-03 01:48) [67]

Mx ©   (03.08.05 01:14) [65]
> А когда каждый байт на счету, когда количество битов заранее неизвестно, когда этих элементов тысячи, а то и миллионы?

Но они же откуда-то берутся эти биты? Раз откуда-то берутся, то и управлять количеством должна отнюдь не процедура изменяющая значение.

TProgrammer   (03.08.05 01:14) [66]
> Тут все зависит от профессиональности программиста, который эти вставки делает.

Нет не от этого, много зависит от того, что даже собственный асм код не настолько прозрачен как код на Pascal.

> И где у тебя разрушается созданный экземпляр TISPProgrammerForm ?

разумеется в этои коде - нигде.
"отрыл в рабочем проекте" - это совсем не значит, что
1. код написан мой.
2. код выложен в том виде как и в проекте.
в самом проекте после ShowModal идет куча лабуды где возвращается результат формы за ним и free.


 
TProgrammer   (2005-08-03 01:54) [68]


> Нет не от этого, много зависит от того, что даже собственный
> асм код не настолько прозрачен как код на Pascal

Прозрачность своего кода для самого себя - это и есть признак профессионализма.


> разумеется в этои коде - нигде.
> "отрыл в рабочем проекте" - это совсем не значит, что
> 1. код написан мой. ...

Как ты там говорил ? "Нет повода верить твоим отмазкам. " (С) ;)


 
Defunct ©   (2005-08-03 02:15) [69]

> Прозрачность своего кода для самого себя - это и есть признак профессионализма.

Ты хочешь сказать, что профессионализ позволит тебе с одинаковой скоростью править программу на алгоритмическом языке и машинном языке?

Доводилось ли тебе существенно изменять собственный асм код примерно 200k через 3-4 года после внедрения?

> Как ты там говорил ? "Нет повода верить твоим отмазкам. "

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


 
TProgrammer   (2005-08-03 02:27) [70]


> Ты хочешь сказать, что профессионализ позволит тебе с одинаковой
> скоростью править программу на алгоритмическом языке и машинном
> языке?

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


> Доводилось ли тебе существенно изменять собственный асм
> код примерно 200k через 3-4 года после внедрения?

Нет и надеюсь не придется :) Все-таки я не системщик - на написание ОС не притендую.


 
Defunct ©   (2005-08-03 03:00) [71]

TProgrammer   (03.08.05 02:27) [70]
> До определенного объема вставки - разница в скорости не заметна. Но мы и не говорим сейчас о чистом ассемблере, а ассемблерная вставка редко превышает пару-тройку страниц кода, опять же, если пишется профессионалом.

Что-то скучновато уже стало.
Тема полностью исчерпана...
итого (в контексте вставок):

1. На асме вообще лучше не писать без крайней потребности.
2. Если и писать, то только ради увеличения производительности кода, старатясь не использовать вызовы процедур написанных на Паскале.
3. Если возникает потребность вызова процедур написанных на паскале и без этого нельзя обойтись тогда goto 1.
4. Особый случай - организация защиты, тут вызовы delphiшных процедур/функций оправданы, но это уже совсем другая тема.

короче [32]. ;>

> Нет и надеюсь не придется :)
прочувствовал бы всю прелесть неалгоритмического языка. ;>
анкетку-то заполни, не уж-то так трудно?


 
TProgrammer   (2005-08-03 03:17) [72]


> короче [32]. ;>

Кроме пары особых случаев, один ты уже озвучил - от себя добавлю еще случай использования asm"а когда удобно использовать например SSE - тогда приходится пользоваться asm.



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

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

Наверх




Память: 0.66 MB
Время: 0.06 c
8-1113149510
parovoZZ
2005-04-10 20:11
2005.08.21
Что выбрать?


14-1122371868
MBo
2005-07-26 13:57
2005.08.21
Пляшущие человечки наномира ;)


4-1117471883
Terech
2005-05-30 20:51
2005.08.21
Запуска файла ДОС под Win9x


6-1116004614
Lela
2005-05-13 21:16
2005.08.21
Прием и отображение информации. Протокол HTTP


1-1122626826
nippo
2005-07-29 12:47
2005.08.21
Наследование интерфейсов