Аннотация:
Данная статья, являясь самостоятельным и законченным документом, в тоже время является и качественным развитием статьи опубликованной год назад: Новое в WinForms 2.0 Автор этих строк постарался “копать” не столько вширь, сколько вглубь. Поэтому новые контролы/фичи исследованы достаточно детально и по каждому разделу имеется довольно серьезная demo-winform, запустив которую легко наглядно увидеть “а как это оно на самом деле”. Так же упомянуты пара-тройка особенностей появившихся только в beta2 и отсутствующих в ранних версиях. Статья нацелена на аудиторию, имеющую твердый опыт работы с WinForms 1.0/1.1 и желающих сделать “быстрый старт” по направлению к WinForms 2.0.
ЩН>Авторы: ЩН> Щербунов Нейл
ЩН>Аннотация: ЩН>Данная статья, являясь самостоятельным и законченным документом, в тоже время является и качественным развитием статьи опубликованной год назад: Новое в WinForms 2.0 Автор этих строк постарался “копать” не столько вширь, сколько вглубь. Поэтому новые контролы/фичи исследованы достаточно детально и по каждому разделу имеется довольно серьезная demo-winform, запустив которую легко наглядно увидеть “а как это оно на самом деле”. Так же упомянуты пара-тройка особенностей появившихся только в beta2 и отсутствующих в ранних версиях. Статья нацелена на аудиторию, имеющую твердый опыт работы с WinForms 1.0/1.1 и желающих сделать “быстрый старт” по направлению к WinForms 2.0.
1) вопрос на сколько я понял gdiplus.dll не поменялась в NET 2.0 а прорисовка стала быстрее за счет чего оптимизации раюоты System.Drawing.Dll ???
2) где можно найти функции получения серийного номера HDD ???
Здравствуйте, <Аноним>, Вы писали:
А>1) вопрос на сколько я понял gdiplus.dll не поменялась в NET 2.0 а прорисовка стала быстрее за счет чего оптимизации раюоты System.Drawing.Dll ???
Увязывать версию gdiplus.dll с версией фрейма просто некорректно. Данная библиотека НЕ является частью фреймворка, а скорее(начиная с WinXP) — частью системы. Например WinXP SP2 будет иметь иную ее версию, нежели XP-система без этого пака. Что касается скорости — чисто субъективно 2ка стала пошустрее. Никаких точных замеров/засечек не производилось, т.к. статья преследовала совершенно иные цели.
А>2) где можно найти функции получения серийного номера HDD ???
Ну для начала данный вопрос не имеет отношения к данному форуму(мы здесь юзер-интерфейс вообще-то обсуждаем). К данному топику, который обсуждает конкретную статью, данный вопрос уж не относится абсолютно. Так штаа.... злостный оффтоп. Но вообще я бы рекомендовал копнуть в сторону WMI. Вот, кстати, ссыл прям по теме: Deriving Hdd info using WMI in C# Но все же оффтопить не следует....
Здравствуйте, alive, Вы писали:
A>Здравствуйте, _FRED_, Вы писали:
_FR>>Нет, впечатления счастливых обладателей журнала
A>Отличная статья . Я надеюсь, часть будущей книги?
Вряд ли. Я ж не писатель по призванию, а практикующий хирург... Но может по 2-му дата-гриду пару заметок и набросаю...
Но по любому — СПАСИБО за высокие оценки, приятно!
Здравствуйте, Smarty, Вы писали:
S>Вряд ли. Я ж не писатель по призванию, а практикующий хирург... Но может по 2-му дата-гриду пару заметок и набросаю... S>Но по любому — СПАСИБО за высокие оценки, приятно!
Тебе спасибо. Как грится... пиши еще.
... << RSDN@Home 1.2.0 alpha rev. 628>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, alive, Вы писали:
A>Еще пара замечаний. A>- Причина ошибки, связанной с исчезновением ToolTip-а, похоже в comctl32 версии 6. A>Например: здесь
Да, вполне возможно. Симпоты очень похожи. Но нам, как ГУЕвым прикладным программистам хотелось бы не столько правильной симптоматики сколько верного лечения болезни. А этого, похоже, пока нет.
A>- Не сразу врубился в такое предложение A>
A>По мере набора символов подчеркивания заменяются вводом.
А Вы думали статьи писать это легко? Не всегда фразы строятся идеально, не всегда... Но я старался в меру моих сил и времени.
По разделу о ClickOnce, об обновлении. Немножко запутано написано про статусы публикации Include и DataFile, вроде как по-любому обновляются только измененые файлы. По крайней мере, не выставляя никаких атрибутов в диалоговом окне ApplicationFiles, в логах IIS видно, что забирается только часть файлов приложения, те, которые были изменены.
Здравствуйте, Ryf, Вы писали:
Ryf>Здравствуйте, Щербунов Нейл, Вы писали:
Ryf>По разделу о ClickOnce, об обновлении. Немножко запутано написано про статусы публикации Include и DataFile,
Да они и сделаны... немножко так, что не знаешь какие слова подобрать, что бы описать их поведение... У меня лучше не получилось. Это по форме. А по сути — я пока противоречий не вижу, см. ниже.
Ryf>вроде как по-любому обновляются только измененые файлы. По крайней мере, не выставляя никаких атрибутов в диалоговом окне ApplicationFiles, в логах IIS видно, что забирается только часть файлов приложения, те, которые были изменены.
Возьмем факты:
1. Publish Status у файлов сборки может быть: Include, Data File(далее для краткости этот статус обозначаем как DF), Exclude, Prerequisite.
2. С двумя последними все ясно и они не интересны...
3. Требуется понять разницу между Include и DF
4. Абсолютно неоспоримая разница — первые кладутся в каталог приложения, вторые — в каталог данных.
Теперь идут хотя и проверенные на практике, но уже теории касаемые поведения Include и DF файлов на этапе апдейта оно же обновление:
1. Грузить не изменившиеся со старой версии файлы с сервера глупо.
2. Если файл НЕ большой — быстрее его сгрузить, нежели искать ответ на вопрос "изменился ли файл?".
3. Для быстрой и не напряжной проверки факта изменения содержимого файла хорошо покатит хэш.
4. Центральный момент разговора: проверяется ли хеш для IncludeиDF ИЛИ только для DF? Мои эксперименты выводят в качестве ответа второй вариант. А вот что говорит МСДН:
ClickOnce will replace the older version of the file with the newer version of the server if a data file(! а не any file, или просто file) has a different hash value in the old version of the application as in the new version.
Т.е. вроде как подтверждает практику.
5. Уже чистая дедукция: Include-файлы(читай исполняемые файлы) слишком важны. Кроме того, по "толщине"(читай времени закачки) Include-файлы(почти всегда) хорошо уступают DF файлам. Ситуации же когда апдейт содержит только изменения в ресурсах(а код идентичен предыдущей версии) редки черезвычайно. Отсюда — Include-файлы почти всегда должны быть загружены в виду их более чем вероятной изменчивости(это раз) и желательны для загрузки, даже подчас избыточной, в виду их важности(это два).
"упомяну о событии Cancel (тип bool)"
Не очень понял, как событие может быть типа bool? Наверное, имеется в виду свойство типа bool у соответствующих EventArgs?
Ещё хочу отметить, что цитаты из MSDN приводятся как на русском так и на английском языке. Хорошо бы придерживаться единообразия в этом вопросе (я бы предпочёл текст на английском).
Ну и орфографические ошибочки были, я на них Ctrl+Enter покликал. Исправьте их, пожалуйста.
В целом статья очень понрачилась, спасибо за труд!