Вы можете найти рассылки сходной тематики в Каталоге рассылок.
СообЧа. Программирование на С++ |
Выпуск 4: как создать Windows 2001? |
Здравствуйте, уважаемые. Сегодняшний выпуск рассылки, равно как и предыдущий, появился на свет с опозданием. Причем весьма заметным. В прошлом выпуске я не потрудился дать объяснение этому факту, однако сегодня намерен исповедаться. Итак, прошлый выпуск вышел с задержкой по той простой причине, что мне просто было лень его делать. Да-да, это так и связано это с тем, что я получил очень мало вопросов (точнее, всего один), а составлять выпуск рассылки на основании одного вопроса не очень-то весело. Поэтому-то я и откладывал создание этого выпуска. Ну, а после его выхода меня прямо-таки завалили вопросами, и я только было собрался на них отвечать, как вдруг...бац...и сижу я без монитора. В том смысле, что он сгорел. Не знаю, что с ним случилось, однако изображение на нем отсутствовало. Конечно, можно было работать наощупь, но у меня этот трюк плохо получается. Поэтому пришлось ждать, пока не отремонтируют монитор. Ну да ладно о плохом, пора переходить к хорошему. Т.е. к сегодняшнему выпуску. Как я уже сказал, меня прямо-таки завалили письмами с вопросами, поэтому сегодня лекция отменяется, зато я отвечу на все вопросы. Однако, хочу сразу оговориться: многие из вас пишут мне такие огромные письма, что вопросами их назвать практически нельзя. Поэтому я не буду приводить полный текст письма, а ограничусь вольным пересказом основной части. Прежде всего, хочу сказать несколько слов про голосование. По предварительным результатам с огромным отрывом победили:
Поэтому со следующего выпуска начнем постепенно рассматривать WinAPI. Хочу сказать, что я здорово позабавился, читая письма по поводу голосования. Некоторые подписчики предлагали мне рассмотреть в рассылке создание ТАКИХ программ, что у меня глаза на лоб лезли. Вот, например, выдержки из письма одного читателя (Ф.И.О. приводить не буду): ...Я слабо знаю C++ ... программировал под Дос ... а в качестве проги для изучения предлагаю какую-нить операционку типа Win9X ... поможет полностью разобраться в С++...
Я как прочитал, у меня чуть инфаркт не случился. "Вот так, - думаю, - ничего себе." Подобную амбициозность я и представить себе не
мог. Обычно, в качестве примеров рассматриваются простенькие программы: текстовые редакторы, файловые менеджеры, ну, в крайнем
случае почтовые клиенты, но уж никак не операционные системы. И дело не в том, что эта задача очень сложная, а в том, что для разработки
операционной системы требуется своего рода компьютер-полигон для испытаний. Ведь ваша операционная система должна определенным
образом отформатировать винчестер, создать на нем загрузочную область и (самое главное) файловую систему, кроме того неизбежны
постоянные конфликты с памятью (видеопамятью в том числе), BIOS, да мало ли еще чем.
Если у вас есть комментарии по поводу всего вышесказанного, шлите письма по адресу
Еще пришло мне письмо с просьбой указать ссылку на книгу Чарльза Петзолда "Программирование в Windows". Вот эта ссылка:
Читаем дальше:
Здравствуйте Павел!
Ну, например:
В особенности рекомендую последнюю книгу - действительно хорошее пособие для начинающих и опытных программистов. Хотя, если вы вообще не представляете себе, что такое программирование, то лучше обратиться к первой книге - название говорит само за себя.
Hello Павел,
Не понимаю, почему на Borland C++ учить азы C неудобно. Если вы имеете в виду Borland C++ для Windows, то не забывайте, что существует и версия для DOS под названием Borland C++ 3.1 (хотя и она содержит IDE для разработки Windows-приложений). Разработанная корпорацией Borland (www.borland.com), эта IDE является одним из лучших инструментов для создания DOS-приложений и изучения языка C/C++. Правда, не знаю, где ее можно достать в Интернете, поэтому рекомендую Turbo C++ 2.0. Эта IDE еще проще и удобнее для изучения C/C++ и распространяется бесплатно. Зарегистрируйтесь на сайте Borland Community (community.borland.com) и зайдите на community.borland.com/museum , откуда вы и сможете скачать Turbo C++, ну а заодно и просто Turbo C. Если кому-то покажется странным, что Borland (а ныне Inprise) раздает свои программы задарма, то тут ничего удивительного нет - дело в том, что эти программы продавать уже бесполезно - их никто не купит, а если их начать раздавать бесплатно, то люди ради интереса скачают (все любят бесплатный сыр), посмотрят и скажут: "Эге, а неплохие программы делала Borland в свое время... Может, стоит у них купить Borland C++ Builder?". И потом эти люди посещают магазины по продаже программного обеспечения, выкладывают сотни долларов за Borland C++ Builder и работают, ощущая время от времени чувсто гордости и правильности покупки. К сожалению, к россиянам это редко относится: вместо того, чтобы купить лицензионный Borland C++ Builder, они лучше купят какой-нибудь пиратский компакт-диск "Все продукты от Борланд" за сотню рублей и вместо одного C++ Builder'а будут наслаждаться еще и Delphi и Borland C++ и Turbo Assembler и еще кучей Borland'овских программ.
Hello Павел,
Ну наконец-то чисто практический вопрос. Внизу вашему вниманию предлагаются два примера программы, одна для anykey, т.е. для "любой клавиши" , вторая для [Enter].
Данный пример хорош тем, что его можно использовать не только для [Enter], но и для любой другой клавиши. Достаточно вместо макроопределения ENTER задать другое макроопределение, например #define ESC 27 (для клавиши [Esc]) и в цикле заменить ENTER на ESC, и программа будет работать до тех пор, пока ей не надоест. Шучу, на самом деле до тех пор, пока вы не нажмете клавишу ESC. Уловили суть? Теперь вы можете определить выход из программы по своему собственному усмотрению. Например, вы можете сделать так, что пользователю придется нажать [Alt+F7], чтобы выйти из программы, правда, для этого нужно знать код клавиши [Alt+F7]. Для того, чтобы узнать нужный код клавиши я написал программу KeyCode. Вот ее исходный код, откомпилируйте его и пользуйтесь:
Как, вы не знаете, что такое управляющие клавиши? Это [F1], [F2], [Tab], [Home],
[Insert], [Вверх/Вниз/Влево/Вправо] и пр., т.е. те самые клавиши, которые помогают нам редактировать
документы, в частности наши любимые программы.
Ну вот и все на сегодня. Если что, пишите. Да, кстати, не забывайте, что со следующего выпуска мы начнем изучение WinAPI, так что будьте готовы: обзаводитесь компиляторами, редакторами и таблетками от головной боли. Ведущий: Павел Незамаев pnezamaev@hotmail.com Темы писем:
Рассылка СообЧа: http://subscribe.ru/catalog/comp.soft.prog.soobcha Сайт СообЧа: http://www.soobcha.boom.ru и его авторы Егор Гостев: evrica@permonline.ru?subject=Soobcha Алексей: mreset@mail.ru |
Авторское право (C) 2000 Павел Незамаев | pnezamaev@hotmail.com |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
В избранное | ||