![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Win API
Вась-Вась © (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/