Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Интернет: Образование, Работа и Бизнес" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Декабрь 2004 → | ||||||
3
|
4
|
|||||
---|---|---|---|---|---|---|
6
|
7
|
8
|
10
|
11
|
||
13
|
14
|
15
|
16
|
17
|
19
|
|
20
|
21
|
22
|
23
|
24
|
26
|
|
27
|
28
|
30
|
31
|
Статистика
-1 за неделю
Программирование на DELPHI в вопросах и ответах #8
Информационный Канал Subscribe.Ru |
Программирование на Delphi в вопросах и ответах.
|
||||||
Очень приятно, что новые вопросы приходят регулярно, а также то, что приходят и ответы, - ведь это самое главное! Как всегда, вопросы и ответы опубликованы в данной рассылке (чуть ниже)... Открыт новый опрос! Проголосовать вы можете ниже. Очень хотелось бы, чтобы проголосовали все... Также ещё одна новость: сайт временно не работает. Выполняется полное обновление с изменением как дизайна, так и структуры сайта. Дата возобновления работоспособности портала пока точно не известна, но рассылка по-прежнему продолжает выходить... Есть ли у вас собственный сайт? Также, если вас не затруднит, в тексте письма напишите адрес своего сайта. Правила нашей рассылки: |
||||||
Начиная с этого выпуска, в рассылке будет публиковаться целый цикл статей, посвящённый написанию собственного инсталлятора на Delphi. Каждый шаг будет подробно описан. В настоящее время существует множество пакетов, позволяющих создавать инсталляторы несколькими кликами мыши. На мой счёт, лучший из них - InnoSetup (http://www.jrsoftware.org). Вы можете использовать и другие, их много в интернете. Но эти статьи будут полезны каждому программисту. Вы можете не делать сам инсталлятор, а выбирать оттуда нужный код, который впоследствии использовать в своих программах...
Написание инсталлятора на Delphi (часть 1) Если вы хотя бы однажды инсталлировали какую-нибудь программу под Windows, то, вероятно, заметили, что процесс инсталляции происходит поэтапно. Поэтапно это ключевое слово, поскольку именно оно подводит нас к этапам инсталляции. Если мы подумаем ещё чуть-чуть, то обнаружим, что сложность реализации различных этапов очень и очень неодинакова. Из всех статей цикла есть один практический вывод: не все этапы инсталляции будут описаны в этом руководстве подробно. Почему? Потому что реализация этих этапов тривиальна или, по крайней мере, не очень сложна. По большому счёту, здесь вы не встретите реализации, здесь вы найдёте информацию: много и на русском языке :) Поскольку информации действительно много, она будет выкладываться небольшими порциями... Сначала определим основные этапы построения инсталлятора:
Ну а теперь перейдём непосредственно к написанию инсталлятора... Обзор основных этапов Запомните одно важное правило: инсталлировать программу можно с человеческих носителей (винчестеры, компакт-диски, ZIP-диски) и с дискет :) Если вы собираетесь написать инсталляцию с дискет, которая явно не поместится на одну дискету, то у вас есть шанс хорошо провести время :) Как вы знаете, Windows сбрасывает ненужную ей в данный момент информацию на диск. Это правильно, но это касается данных. Программы никогда на диск не сбрасываются, поскольку в Windows сегмент кода программы не может быть изменён. Когда Windows нужна память и ей под руку подворачивается ваша программа, она её просто выкидывает и всё. Когда ваша программа снова становится нужна, Windows снова загружает её из выполняемого файла. Эта в высшей степени корректная техника перестаёт работать при инсталляции с дискет. Ваша программа, например, копирует четвёртую дискету и тут выясняется, что у неё (у программы) пропал кусок кода. Какие проблемы? Windows пытается прочитать файл a:\setup.exe и естественно его не находит (на четвёртой-то дискете? откуда?). Только не паникуйте! Эта проблема давно решена, иначе вы не могли бы установить на свой компьютер ни одной программы! Всё очень просто программа инсталляции копирует себя и все необходимые файлы во временный каталог на жёсткий диск и перезапускает себя с жёсткого диска. Это и есть первый этап инсталляции. В зарубежных программах он обычно называется "Prepare to install". Ещё раз обратите внимание на то, что совсем не обязательно выполнять этот этап, если вы инсталлируетесь не с дискет, или если ваша инсталляция умещается на одну дискету. На втором этапе программа инсталляции обычно показывает пользователю несколько страшных предупреждений; что-то типа "если вы не заплатите за эту программу, то сидеть вам в тюрьме три пожизненных срока". Я слышал, что некоторые пользователи со слабым сердецем даже умирали за компьютером от таких угроз :) Реализация этого этапа до идиотизма тривиальна, поэтому мы и не будем на нём останавливаться подробно. Следущий этап третий. Здесь программа установки дотошно выспрашивает у пользователя кучу всяких важных данных: имя пользователя и его огранизацию, тип установки, куда будем ставить, как будет называться группа программ и так далее. На этом этапе нам встретятся некоторые технические трудности, но их несложно обойти. Четвёртый этап копирование. Конечно, это не очень сложно, но некоторые проблемы у нас всё-таки возникнут. Во-первых, надо проверить наличие свободного места на целевом диске. Во-вторых, надо удостовериться, что у нас есть доступ к нужному каталогу. В-третьих, надо проверять, нет ли уже такого файла... Вы ещё не передумали писать программу инсталляции? Следующий, пятый, этап настройка системного реестра (registry). Достаточно тривиальная процедура, правда, при инсталляции большого продукта, записывать придётся очень много. Предпоследний, шестой, этап, заключается в создании группы программ в меню "Пуск". Или, возможно, вы захотите вынести ярлык на рабочий стол. Наконец, финальная часть включает демонстрацию нескольких файлов (например, readme), затем онлайновую регистрацию (подробно на ней я останавливаться не буду) и последнее сообщение "Инсталляция успешно завершена". Теперь мы можем перейти к подробному рассмотрению этапов. Но об этом вы узнаете только со следующего выпуска :) Присылайте свои статьи по адресу delphi-faq@list.ru с темой 'Clause' (без кавычек), и они будут опубликованы в ближайших выпусках рассылки. Большая просьба: статью оформляйте в -txt или -doc формате и используйте -zip или -rar сжатие (без самораспаковки). |
||||||
18. Как сделать индикатор загрузки процессора в % как в диспетчере задач? Перерыл кучу всяких факов и конференций, но ничего не нашел. Помогите плиз....... *** Добро пожаловать на мою страничку http://sources.h11.ru/***. [Ответить]. 19. Всем приет! Имеется прога для скачивания файлов из сети, как прикрутить STATUS BAR, ну чтоб показывало прогресс закачки? [Ответить]. 20. Имеется несколько Word'-овских файлов с текстовой информацией и объектами (формулы MSEquation, др.). Стоит задача: Из программы написанной на Delphi дать команду на формирование файла, состоящего из заданных Word'-овских файлов, а затем и вывода сформированного файла на печать. Желательно было бы иметь возможность в программе просмотреть сформированный файл перед печатью. Буду благодарен за ответ. [Ответить]. 21. Задача состоит в следующем: необходимо непрерывно получать изображения со сканера (по крайней мере настолько, насколько это возможно, но без выгрузки основной программы). 22. Господа - программисты, расскажите как проще всего вывести на экран Delphi - программы готовую таблицу базы данных Microsoft Access? Заранее благодарен. [Ответить]. 23. Не подскажет ли ктонибудь, как отсканировать все доступные компьютеры в сети? Очень нужно. [Ответить].
Вопросы, ждущие ответа: 12. Привет. Может, кому-нибудь из читателей, удалось написать утилиту, показывающую все активные TCP/IP соединения (аналог Netstat) на Delphi без использования Fnugry Netstat Components. Поделитесь пожалуйста исходником, а то дядька Google мне отказался с этим помочь. [Ответить]. 14. Скажите, как узнать занятость принтера и передать задачу на другой принтер сети! [Ответить]. 15. Здраствуйте.Можете сказат как я могу выбрат компоненть из другого Application? Например в другом App. я использвал с одного Edit-a ( у него ест OnChange(), OnKeyPress() и.др ) или он может бьт не визуальным. И хочу что добавить код в новую Application( первому Form-у OnCreate ) чтобы он автоматически выбрал ту Component-у какую я дам в коде. Заранее блогодорен!!! [Ответить]. 17. Здравствуйте. Как двойным щелчком мышки по URL, скопоровать его в TMemo? [Ответить]. |
||||||
Увы, ответов не приходило... Вы также можете ответить на предыдущие вопросы. Поскольку на них уже ответили как минимум раз, они больше не публикуются в рассылке. Но если вы можете что-то добавить к ответам других, пожалуйста, отвечайте - ответы будут опубликованы. Найти предыдущие вопросы вы можете в архиве рассылки: http://subscribe.ru/archive/comp.soft.prog.delphifaq/, либо на сайте рассылки (http://www.delphi-faq.fatal.ru). |
||||||
Здесь представлены ссылки на дружественные сайты нашего портала. Если вы тоже хотите стать нашим другом, разместите баннер на главной странице своего сайта. Подробнее о том, как стать "другом", можно прочитать здесь: http://www.delphi-faq.fatal.ru/banner.htm. http://infomania2004.webhost.ru/ - Этот сайт создан для того, чтобы вы могли получить интересующую вас информацию с минимальными затратами сил и времени. Если вы не нашли здесь нужной информации, вы можете оставить заявку на ее поиск. Как только информация будет найдена, она появится на сайте, а вам сообщат об этом. |
||||||
Сидят два программиста в кафе. Просыпается утром хакер с бодуна, открывает глаза - рядом классная Приходит программист с работы, а на него жена набрасывается с "Windows" - это слово из диалекта Апачей. В переводе означает: "Белый Разговор ламера с программером: [Анекдоты прислал: Дмитрий Ермолаев] Присылайте свои "компьютерные" анекдоты по этой ссылке: delphi-faq@list.ru и они обязательно будут опубликованы! |
||||||
Товарищи программисты! Проявляйте свою активность. Давайте помогать друг другу! |
||||||
Сайт рассылки: http://www.delphi-faq.fatal.ru E-mail: Delphi-FAQ@list.ru |
http://subscribe.ru/
http://subscribe.ru/feedback/ |
Подписан адрес: Код этой рассылки: comp.soft.prog.delphifaq |
Отписаться |
В избранное | ||