Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Win API


Страницы:   1 2

Вась-Вась ©   (2004-11-29 10:42:00) 

Товарищи! Вот вы часто советуете использовать Win Api в своих игрушках, а что это такое и чем оно полезно. Если можно, приведите конкретный пример.


Sphinx   (2004-12-25 10:01:00) [1]

> DonNikola   (25.12.04 01:22) [32]

Может быть, у меня именно 7я версия. СОМ:=nil не забывал, именно поэтому и странным показалось поведение MemProof

> GetMem/FreeMem > SysGetMem/SysFreeMem


Спасиба, посмотрю.


DonNikola   (2004-12-25 01:25:00) [2]

И, кстати, попробуй использовать вместо GetMem/FreeMem внутренние функции SysGetMem/SysFreeMem, может это там что-то пропадает.


DonNikola   (2004-12-25 01:22:00) [3]

Значит 7-я версия и выше сделаны без багов в VCL, потому что у меня что 3-я, что 6-я на только сгенеренном приложении выдает потерянную память и еще по мелочи.
А насчет COM, пробовал :=nil, может забыл?


Sphinx   (2004-12-24 13:48:00) [4]

> DonNikola   (22.12.04 23:54) [30]
> MemProof

Занятно...но у меня моё, далеко не пустое VCL приложение ни одного бага не выдало. Три ошибки были, не спорю, при вызове моих "заглушек" и всё!

А вот в WinAPI выпало множество предупреждений на Делфийский менеджер памяти (приложение правда под DirectX и предупреждения были о необходимости _Relise СОМ объектов (?) ).


DonNikola   (2004-12-22 23:54:00) [5]

Программа для отслеживания утечек памяти, ресурсов, ошибок и так далее, весьма полезная штука при разработке.
www.automatedqa.com
www.automatedqa.com/products/memproof/index.asp
Рекомендую качать всем у кого еще нет, программа бесплатная. Лучше качать 0.936 там хелп и 0.950 - последная версия.


Sphinx   (2004-12-22 11:33:00) [6]

> DonNikola   (22.12.04 04:48) [28]

Выскажу своё мнение, если не прав, пусть мастера скажут как оно есть.
VCL сама обрабатывает множество сообщений Windows, поэтому и возникают проблемы, то есть код VCL обрабатывает событие раньще чем скажем происходит вывод графики. Почему так решил? Некоторые примеры Краснова в прямом смысле моргали. То есть сперва происходила отрисовка окна, а уже потом той сцены, которую DirectX выводило на поверхноть этого окна.

З.Ы. А что за MemProof ?


DonNikola   (2004-12-22 04:48:00) [7]

Размер это конечно здорового, не спорю, но главное это довольно значительная глюкавость VCL. У меня пустое прилижение на VCL столько багов в MemProof'е выдало, что я даже удивился, а 150 kb моих исходников на WinApi работают как часы, без единого замечания от MemProof'а и занимает exe 54kb, что тоже весьма радует.


Zak3D[@Tm]   (2004-12-21 07:36:00) [8]

Darthman
А ну да, я имел ввиду пустое, но имеющее своё окно : )


Darthman   (2004-12-20 13:37:00) [9]

//Интересно, а у меня пустое 10 кил.
Пустое 8.
А то про что я написал, так там и иконка своя есть, и оно умеет работать с файлом конфига, и всякие комбобоксы, чекбоксы там есть :)


Sphinx   (2004-12-20 11:23:00) [10]

> Darth   (20.12.04 03:23) [23]

Может быть. Потому и уточнил что это у меня так, можт быть и меньше, может быть и больше.

Я даже знаю как уменьшить до 15-20 кБ, но при этом мне код читать сложнее, в АПИ только разбираюсь ещё.


Zak3D[@Tm]   (2004-12-20 07:33:00) [11]

Интересно, а у меня пустое 10 кил.


Darth   (2004-12-20 03:23:00) [12]

//на API - (у меня) порядка 40 кБ
а у меня 27 и не с пустым окошком... любопытно, да?


Поручик   (2004-12-19 22:41:00) [13]

Sphinx   (19.12.04 22:40) [21]

> кхмм...vcl70.bpl весит полтора метра а не 300
> килограмм...


забыл я про это :)))


Sphinx   (2004-12-19 22:40:00) [14]

> Поручик ©   (19.12.04 22:16) [20]

забыл я про это :)

> прихватить библиотечку на 300 килограмм

кхмм...vcl70.bpl весит полтора метра а не 300 килограмм...


Поручик   (2004-12-19 22:16:00) [15]

Вась-Вась   (19.12.04 21:22) [18]

> Создаётся только пустое окно и всё. Но вот я не
> заметил особой разницы в размере ехе-шника: что-то
> около 6 КВ. А почему?


Если у тебя на вкладке Project >> Options... >> Packages стоит галочка Build with runtime packages, то размер экзешников будет одинаков, но VCL прога не запуститя у твоего друга, у которого нет Delphi. А чтоб запустилась надо либо прихватить библиотечку на 300 килограмм, либо убрать ту галочку (тогда эта библиотечка запишется в экзешник). Такие дела.


Sphinx   (2004-12-19 21:46:00) [16]

> Вась-Вась   (19.12.04 21:22) [18]
> что-то около 6 КВ


менее 15 кБ - это подозрительно...ты не 8-ом Делфи случайно делал?
На VCL размер ПУСТОГО окна - 350 кБ (Д7), на API - (у меня) порядка 40 кБ


Вась-Вась   (2004-12-19 21:22:00) [17]

Вот какое дело: создал я два элементарных приложения – одно с использованием VCL, а другое – на Win API. Создаётся только пустое окно и всё. Но вот я не заметил особой разницы в размере ехе-шника: что-то около 6 КВ. А почему? Говорят, что экономия значительная! Или это в случае, когда у меня на форме очень много  компонентов? Поясните, будьте так любезны!


Вась-Вась   (2004-12-04 09:42:00) [18]

В общем, по большому счёту,как я понял, для игры оно нужно лишь для создания окна. Однако, выигрыш в размерах ехе это штука полезная.


OSokin   (2004-12-03 20:22:00) [19]

А имхо, просто аппликашку сделал на API вместо VCL


MeF Dei Corvi   (2004-12-03 19:35:00) [20]

http://kol.mastak.ru/


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо