ПРОГРАММ: 654 | СТАТЕЙ: 125 | КОДОВ: 3434   

    главная        новости        программы        библиотека        коды        рейтинг       форум   

Афоризм
Бритвенный станок с плавающей боеголовкой.
 
Поиск


 
Рассылка
| Soft-Ежедневник - обзор программ прямо к Вам на e-mail
 
 
Полезное!
 
7 лучших
  История Качи. Док. фильм
  Посмотреть онлайн бесплатно мультфильмы целяком в HD качестве!
  Продам резину на спецтехнику Я-190 15.00-20
  ООО Имидж-студия ВЕРОССА
  Бумажная посуда с логотипом
  
  
 
  Библиотека > программирование > Delphiдобавить статью
Уменьшаем размер EXE в 40 раз, или Вся правда о консольных приложениях Delphi

"Пустая" форма весит около 355 КБ, и этот начальный размер увеличивается с каждой новой версией Delphi...
 
delphid.dax.ru
winsov.ru
10-05-2004
Версия для печати
печать

"Пустая" форма весит около 355 КБ, и этот начальный размер увеличивается с каждой новой версией Delphi. "Пустая" программа, написанная с использованием библиотеки KOL, уменьшающей размер исполняемого файла, - 32 КБ. "Чистое" консольное приложение имеет размер 8 КБ, поскольку отображается как процесс и, соответственно, не имеет сложных взаимодействий с Windows-окнами. То есть можно сделать так, чтобы по Ctrl%2BAlt%2BDel консоль не было видно :).

Итак, в меню Delphi выберите File>New>Other и в появившемся окне среди прочего найдите пункт Console Application. Возникнет следующая заготовка:

program Project1; //название проекта

{$APPTYPE CONSOLE} //директива, указывающая на наличие консоли

uses SysUtils; //подключенные модули

begin //начало процесса
{ TODO -oUser -cConsole Main : Insert code here } //комментарий от Borland
end. //конец процесса

Ага. Это "пустое" консольное приложение. Нажмите F9, чтобы запустить его. Что вы увидели? Черное окошко вроде Сеанса MS-DOS возникло и сразу исчезло. Куда оно делось? Всё дело в том, что консольное приложение - это процесс, который, как и всё на свете, когда-нибудь закончится :). Начало процесса - ключевое слово begin, а конец - end. Поскольку между ними отсутствуют какие-либо другие команды, то end (прекращение процесса) исполняется сразу после начала, и консоль исчезает. Чтобы такого не было, надо "занять" приложение каким-нибудь циклом, желательно вечным ;). Вот так:

begin
repeat
//это наш вечный цикл
until 1=0;
end.

Обратите внимание на команду until. Наш цикл будет исполнятся до тех пор, пока 1 не станет равен 0. Угадайте сами, когда это случится :). Другой вариант:

begin
while true do begin
//вставляйте ваш код здесь
end;
end.

И еще вариант:

Label MyLabel; //"метка"

begin
MyLabel:
//ваш код здесь
goto MyLabel;
end.

В общем, вариантов сколько угодно. Главное, что консоль не будет закрываться. А теперь надо реализовать чтение и запись на полотно консоли, как это сделано в (не)старом (не)добром MS-DOS. Помогут нам в этом процедуры из модуля System.pas. Синтаксис:

WriteLn(ЧТО_ЗАПИСЫВАЕМ) //вывод данных в консоль
ReadLn(ЧТО_ЧИТАЕМ) //чтение данных из консоли
Почему же модуль System.pas не продекларирован в разделе uses? Это базовый модуль Delphi, который всегда подключен "по умолчанию". А теперь добавьте к исходному коду:

WriteLn("Hello World!");

Соответствующая строка ("Hello World!") будет выведена на консоль. Если эта команда будет помещена в вечный цикл (как его создать - см. выше), то строка "Hello World!" тоже будет добавляться бесконечное число раз. Чтобы это исправить, нужно написать:

Begin
While true do begin
Writeln("Hello World!");
Readln;
End;
End.
Как вы уже поняли, команда WriteLn записывает, а ReadLn - читает. При этом команда, стоящая после ReadLn, выполнится, только когда юзер нажмет клавишу Enter. Если же вы собираетесь читать конкретную строку, которую ввел юзер, то нужно указать переменную, из которой будет осуществляться чтение:

var S: String; //наша переменная

begin
while true do begin
Writeln("Enter your name"%2B#10);
Readln(S);
Writeln(#10%2B"Your name is "%2BS);
end;
end.
Здесь "№10" обозначает конец абзаца, переход курсора на следующую строку (клавиша Enter). А вот пример, где программа закрывается по команде юзера:

var s: String; 

begin
while true do begin
Readln(S); //что ввел юзер?
//Юзер мог ввести команду и прописными буквами,
//и строчными. Преобразуем буквы в прописные
//командой UpperCase.
If UpperCase(s)="EXIT" then begin
//переспросим еще раз
Writeln("Do you really want to exit? [y/n]");
//читаем ответ юзера
Readln(s);
if UpperCase(s)="Y" then exit; //выходим
end;
end;
end.

Вот так. Сюда можно вставить какой угодно код, только подключив, если требуется, необходимые модули. Теперь еще раз откомпилируйте проект и нажмите Project>Information for "ProjectName". Размер EXE будет около 40 килобайт, но только потому, что модуль SysUtils.pas в разделе Uses весит так много. А если вы замените этот модуль на Windows.pas, то программа будет занимать, как я и обещал, ВОСЕМЬ :) кило на вашем харде :). 

Конечно, при условии, что вы будете пользоваться только модулем Windows, который содержит большинство команд, необходимых в повседневности. Если вы не собираетесь вступать в консольные переговоры с юзером и пользоваться процедурами WriteLn и ReadLn, то и консоль не нужна. Удалите директиву {$APPTYPE CONSOLE}, чтобы черное MS-DOS"овское окошко не появлялось.
Но если это окошко вам очень нужно и вы собираетесь вести диалог с пользователем, то не пытайтесь указывать русские буквы в команде WriteLn: консоль отобразит их в другой кодировке. Чтобы это исправить, напечатайте исходный (русский) текст в Блокноте и поставьте шрифт Terminal. Результат будет в кодировке DOS, как его и надо указывать в процедуре WriteLn.
Очистить полотно консоли от текста можно так:

program Project1;

{$APPTYPE CONSOLE}

uses Windows;

var
buffer: TConsoleScreenBufferInfo; //буфер
i: integer;
begin
WriteLn("Press <Enter> to clear screen");
ReadLn;
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE),buffer);
for i:=0 to buffer.dwSize.y do writeln;
Writeln("Screen is cleared :)");
Readln;
end.

Вот и всё. Как собрать что-нибудь посерьезнее, чем обхаянное крутыми программистами приложение типа "Hello World", мы расскажем вам в следующей серии.




Комментарии
Оставить комментарий
страница 1 | 2 | >

TralisasToca | 16-07-19 07:30
Кроссовки появились у населения не так давно. Их начали активно носить совсем не давно. Самыми известными брендами обуви считаются фирмы Nike и Adidas. Кроссовки бренда Nike завоевали популярность очень сильно. В наше время кроссовки Nike предпочитают покупать и мужчины, и рабочие. Организация Найк начала стремительно развиваться 50 лет назад. Ежегодно бренд создаёт новые технологии, которые внедряет в кроссовки. Если вы стремитесь носить оригинальную обувь Nike, вам надо покупать найки в оригинальных магазинах. Одним из таких есть оригинальный интернет-магазин justnike.ru, где доступны кроссовки для мужчин и девушек.

На сайте [url=https://justnike.ru/]найк кроссовки женские[/url] вы можете заказать разные кроссовки. Если вам интересны чисто спортивные варианты найков, они доступны в определенных разделах. Вы можете выбрать на сайте среди размерной сетки и параметров обуви. В наши дни безумно востребованной является модель Nike Air Max 720 Sunset Hyper Grape Black-Hyper Pink. Достаточно много ребят также покупают Nike Air Force 1 Low “Volt” Jewel Swoos. Если вам нравятся кроссовки фирмы Nike, вам надо обратить внимание на модели для регулярной ходьбы. Их активно покупают как в России, так и в других странах СНГ.

На ресурсе вы можете найти кроссовки со скидками. Так как на данный момент сезон скидок, достаточно много моделей доступны многим. Вы можете заказать и купить кроссовки с гарантией. Сомневаться в том, что найк официальный ресурс продаст вам подделку – не ст


Dazimesnen | 15-07-19 23:17
Оформить микрозайм онлайн на карту можно здесь все-займы-тут.рф

Если Вам на данный период жизни понадобилось взять [url=https://все-займы-тут.рф/]займы без проверки ки[/url] то наш сайт будет Вам полезен. Вы извели весь бюджет, а до зарплаты ещё десять дней? Нежданные траты могут быть связаны с чем угодно, может быть это приезд друзей, внеплановый отпуск или путешествие. Или у Вас случился печальный эпизод, например, болезнь, которая требует затратного лечения. В любой ситуации мы будем рады Вам помочь наладить Ваши временные денежные вопросы.

Мы отдаем информацию о всех микрозаймовых компаниях, их услугах и методах получить положительный ответ 100 %. Это будет бесплатно, заходите на наш сайт и читайте множество нужной информации. Нам доверяет большое количество гражданин России, которые уже сумели воспользоваться услугами микрофинансовых компаний через наш интернет портал.

Мгновенные займы часто очень спасают нас в трудных ситуациях, а всё потому что это самый быстрый способ займа денег. Вам не нужно ходить в офисы банков, оформлять документы, приглашать спонсоров, занимать у родных в долг. Всё что Вам необходимо-это возраст 18 лет, паспорт, интернет и мобильный телефон. А также нужна банковская карта, если Вам будет удобно получить денежные средства данным способом.

Перед заполнением заявки советуем ознакомиться с предложенными условиями микрозаймовых организаций. Все компании осуществляют работу на разных процентных тарифах, сроках погашения и способах


Sherikatex | 04-05-19 01:58
[url=http://www.mother-surrogate.com/][img]https://pups.su/wp-content/uploads/2017/09/Kak-otuchit-rebenka-ot-grudnogo-vskarmlivanija7.jpg[/img][/url]

Different women knew, that they can’t have children. There are some women who knew about this from childhood. If you wish to try to become a mother, you should use the services of surrogate companies. One of companies is Feskov Human Reproduction Group. Contacting with this company,
you have a chance to become a father or mother. There are a lot of reviews on the Internet about this surrogate organization.

Currency a lot of guys from diverse countries don’t know, why they couldn’t have baby. There are a lot of occasions for this. As rule, they are bad ecology atmosphere, stresses, malnutrition, lack of sleep. When a human lives in that rhythm every day, the person has health problems. Popular of them is infertility.

Every young family wishes to have babies. Unfortunately, not every young parent has the possibility to have baby. Some of the young families have a unpromising diagnosis – infertility. When standard therapy doesn’t support, you must use professional services. As rule, they are accessible in professional surrogate companies. One of them is Feskov Human Reproduction Group. At their link, you can search for prices. At mother-surrogate.com you can search also guest services.

In the Internet you could find reasons, why you should choose them. In their organization are working professionals. They have


Drozderajab | 28-04-19 03:13
Сегодня парни не представляют личной жизни без интересно проведенного досуга. Если вы предпочитаете интересно проводить выходные, вам надоела повседневная рутина, предлагаем попробовать себя в азартных играх. Большое количество людей прекрасно знают, что это такое. В игровые автоматы на деньги играют сегодня как новички, так и эксперты. Очень много людей зарабатывают на игровых аппаратах огромные деньги. Ведущие разработчики программного обеспечения максимально содействуют тому, чтобы люди получали наслаждение от игры.

Сегодня одним из известных ресурсов, где вы можете играть в лучшие игровые автоматы на денежные средства и <a href=https://money-slots.org/>поиграть в игровые автоматы</a> , является сайт money-slots.org, где доступно много игровых слотов. На ресурсе доступны игровые автоматы от NetEnt, Igrosoft, Novomatic и других разработчиков софта. Вы моментально можете играть в онлайн-казино, где при желании можно сразу же вывести денежные средства. Разработчики создают популярные игровые автоматы, в которых отличная отдача. Вы можете играть в Fruit Cocktail, Aztec Gold, Bubbles и другие слоты.

На сайте находится удобная навигация. Позитивные эмоции после того, как вы будете вести игру в онлайн-казино – обеспечены вам. Вы сможете также играть совершенно бесплатно в слоты на денежные средства. На портале ведется рейтинг тех, кто выиграл больше всего. Люди часто посещают ресурс и зарабатывают на играх большие деньги. Вы можете играть в игровые слоты, зарабатывать ф


Keotaber | 21-04-19 04:31
Заказать табак для кальяна высшего качества tabak-vostoka.com

Любители табака высокого качества могут заказать уже сегодня продукцию из ОАЭ. Все наши сигареты и табак популярных марок изготовлены на Востоке, где находится производство. Если Вы ищите <a href=https://www.tabak-vostoka.com/shop/sigarety/oscar-red-q-type>купить сигареты</a> то Вы попали по верному адресу.

Наш интернет-портал tabak-vostoka.com представляет самый лучший табак и уголь для кальяна, сигареты и всевозможные аксессуары. Ознакомиться во всем ассортиментом можно на нашем интернет-ресурсе. Мы предоставляем гарантию на 100 %, что наш табак и сигареты будут самого высшего качества, чтобы не сомневаться в этом, заказывайте, попробуйте и Вы точно останетесь удовлетворены.

Мы рады предложить Вам высококачественную продукцию для курения или кальянной церемонии — сигареты распространенных популярных марок для женщин и мужчин, табак для кальяна на любой вкус и аромат, уголь, зажигалки, трубки или мундштуки. Чтобы подробнее узнать о нужном товаре, заходите в раздел «каталог товаров» в нашем интернет-магазине. Кликнув на фото выбранного товара, Вам будет представлено описание товара, его наличие и другая необходимая информация. Очень удобно то, что цены на табак и другую продукцию можно выбрать в необходимой для Вас валюте, в том числе и в долларах.

Многим известно, что в Арабских Эмиратах курение является развитой культурой. И кто как не местные жители и создатели табака высшего класса могут то


Vasbanguefe | 29-03-19 19:52
Оформить займ на карту без отказа на портале - INCOME-BANK.RU

Моментальные займы на карту в настоящий момент являются самым скоростным и рациональным способом получения денежных средств. Если Вам немедленно понадобилась конкретная сумма финансовых средств, то услуга экспресс-займов на карту онлайн Вас выручит. В нашей жизни происходят такие непредвиденные моменты, где решением проблемы сможет стать только наличие денег. Но если у Вас нет накоплений, близкие и знакомые не могут дать взаймы необходимую сумму, а зарплата только через неделю, не расстраивайтесь! Выход есть всегда, тем более, если Вы читаете эту публикацию, то Вы на правильном пути.

На данном интернет-портале INCOME-BANK.RU Вы найдете Все самые лучшие МКК, отправляющие денежные средства на Вашу банковскую карту. Положено считать, что подобные услуги постоянно делаются под огромный процент и при гашении Вашего микрозайма придется отдать сумму в три раза больше, чем брали изначально.

Это неправда! Сегодня многие МКК и МФО имеют маленькие процентные ставки, хорошие условия и выгодные акции, а нередко, для потребителей с хорошей историей или новых заемщиков <a href=https://income-bank.ru/>займы на карту срочно без проверки без отказа онлайн круглосуточно</a> оформляются совсем без переплат. При выборе МФО обратите внимание на такие условия.

Для того, чтобы оформить <a href=https://income-bank.ru/>займы без отказов на карту</a> Вам понадобится только Ваш паспорт, полученный на территории РФ, сотов


Zasronsseatt | 27-03-19 03:49
"У вас нет ощущения, что мэрия нас всех считает идиотами? Мы говорим: "Реагенты вредны для экологии и здоровья, это доказано учеными. Вот результаты прикладных исследований МГУ". Департамент ЖКХ отвечает: "Ой, ну зачем нагнетать, регенты безопасны. Вы что, не видели, как в эфире "Москва-24 их с черным хлебом ели? Очень вкусно и полезно", - пишет политик и глава совета депутатов Красносельского района Москвы на своей странице в Facebook.

"Мы тащим чиновников в суд и говорим: "Вы что, сумасшедшие? Посмотрите, как мучаются астматики, посмотрите на обожженные лапы животных. Да хотя бы на испорченную обувь взгляните". Представитель мэрии закатывает глаза: "Ну просто надо нормальную обувь покупать, у меня вот итальянские ботинки — они в полном порядке".

И вот теперь к журналистам выходит главный пульмонолог Минздрава РФ Александр Чучалин и утверждает: Из-за реагентов зафиксирован скачок заболеваемости раком легких, портится зрение и кожа, особенно страдают дети.

Цитата:

"Помимо болезней легких, в том числе онкологических, использование реагентов влияет на ухудшение зрения, способствует развитию кожных заболеваний. От воздействия реагентов на улицах сильнее всего страдают дети из-за их невысокого роста".

Понимаете, да? Настоящий скандал. Официальный представитель Минздрава прямо говорит: нас травят за наши же деньги. Был бы в Москве нормальный парламент, он бы уже завтра собрался на внеочередное заседание. Потому что парламент должен защищать избирателей.


JadopamMEP | 12-03-19 03:53
В Русской православной церкви в канун Прощеного воскресенья напомнили, что подлинное покаяние не бывает легким, и призвали не сводить его к веерной отправке SMS с извинениями. Об этом глава синодального Отдела внешних церковных связей митрополит Иларион заявил в эфире программы "Церковь и мир" на телеканале "Россия-24", отвечая на вопрос ведущей, которая отметила, что рассылка сообщений стала "доброй традицией", но добавила, что попросить прощения дистанционно легче, чем глядя в глаза.

"Нет ничего проще, чем в церковный праздник разослать по SMS коллективное поздравление, а в Прощеное воскресенье разослать по SMS просьбу о прощении. Самое трудное - действительно простить реального обидчика или попросить прощения у того, кого мы реально обидели, и того, кто находится рядом с нами, может быть, каждый день, и кто эту обиду носит в сердце. Иногда это представляет собой целый нравственный подвиг", - заметил владыка.

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

"То есть, если он кого-то обидел, надо по крайней мере попросить прощения, а еще лучше загладить обиду какими-то добрыми делами, добрыми поступками, добрым отношением к человеку", - сказал Иларион.

В свою очередь настоятель храма Новомучеников и исповедник


Misrolzfrild | 19-02-19 19:39
Нападающий санкт-петербургского СКА Никита Гусев в домашнем матче против финского "Йокерита", который завершился со счетом 5:2, установил рекорд Континентальной хоккейной лиги <a href=http://tiscompany.com/communication/forum/user/1193/>http://tiscompany.com/communication/forum/user/1193/</a> по количеству результативных передач за один регулярный сезон.

Точный пас в первом периоде для героя олимпийского финала стал 61-м в 59-м матче текущего сезона <a href=http://basket26.ru/forum/user/63712/>http://basket26.ru/forum/user/63712/</a> . В третьей двадцатиминутке Гусев еще забросил шайбу, практически сняв все вопросы о победителе встречи.

"Ничего особенного не чувствую. Я уже набрал столько, просто <a href=http://www.dtpochevidets.ru/forum/user/609751/>http://www.dtpochevidets.ru/forum/user/609751/</a> мне одну передачу не записали - где-то игр пятнадцать назад. Я не переживал, уже знал, что давно побил этот рекорд, и потому играл спокойно, - приводит слова хоккеиста официальный сайт СКА. - Думаю, что праздника по поводу рекорда не будет. Была очередная победная игра, и я буду стремиться в следующих матчах сыграть как можно лучше".

Предыдущее достижение принадлежало нападающему Александру Радулову, в сезоне-2010/11 <a href=http://shop.olmamedia.ru/forum/user/49651/>http://shop.olmamedia.ru/forum/user/49651/</a> , выступая за уфимский "Салават Юлаев", он отдал 60 передач в 54 встречах.


Ermasojex | 19-02-19 03:46
Casino Вулкан Клуб сегодня завоевал доверие у достаточно количества игроков. Много азартных посетителей заходят на casino-r.org, чтобы поиграть и отдохнуть. Достаточно многим нравится портал Casino R по причине его дизайна, забавных параметров. Играть сегодня в клубе Вулкан очень легко и интересно.

Если вы хотите не только получить комфорт от игры, но и попробовать заработать огромные деньги, Вулкан Клуб несомненно для Вас! Вы можете вести игру в <a href=https://casino-r.org/online-casino-vulcan>казино Вулкан</a> , где: Beetle Mania Deluxe, Hulk, Just Jewels Deluxe и другие слоты. Сейчас многие ведут игру бесплатно в виртуальные игры на порталах казино. Если вы стремитесь играть в самой известной сети игровых клубов, Вулкан Клуб понравится вам всем.

Тут вы сможете принимать участие в турнирах, получать плюшки и следить за индивидуальным выигрышем.
Многих участников интересуют только <a href=https://casino-r.org/provider-evoplay>evoplay</a> на финансы. Популярные игроки также часто посещают ресурс. Пользователи играют в игровые автоматы казино Х как на денежные средства, так и бесплатно. Много возможностей ожидает игроков, которые делают большие депозиты. Если вы приняли решение вести игру на денежные средства, вам надо пройти регистрационный процесс. После регистрации вы можете положить деньги на баланс. Сделать это можно через любой платежный сервис.

Положить финансы на счет вы можете через Visa или MasterCard. У вас также есть возможность использовать дру

Имя:
E-mail:
Сообщение:


Число:

   очистить

популярные статьи по теменовые статьи
Создание видео из фотографий в программе "ФотоШОУ"
Разное / Обработка фото и видео
Больница для компьютера
железо / Система
Чем так популярны социальные сети?
Разное / разное
Синхронизация данных с сотового телефона на ПК
железо / Мобильные устройства
Куплю хостинг
web - разработка / Хостинг

Опрос
На что Вы обращаете внимание в первую очередь при покупке товара в интернет-магазине?  
 
Комментарии и оценку пользователей
Наличие нескольких фотографий
Подробное и качественное описание
Условия доставки
Возможность покупки в кредит
 
Самое свежее  
 ПРОГРАММЫ

ICQ 8.0.5990
ICQ 8.0.5990

Mozilla Firefox 18.0.2
Mozilla Firefox 18.0.2

ArtMoney 7.40.4
ArtMoney 7.40.4

 НОВОСТИ

Хакерская атака на Google из Китая
Хакерская атака на Google из Китая

Мы победили! Олимпиада 2014 пройдет в Сочи
Мы победили! Олимпиада 2014 пройдет в Сочи

 БИБЛИОТЕКА

Создание видео из фотографий в программе "ФотоШОУ"
Создание видео из фотографий в программе "ФотоШОУ"

Больница для компьютера

 
Рекомендую!



Rambler's Top100

Copyright © 2004-2019 MostInfo.net  | связь с админом
При использовании материалов сайта ссылка на MostInfo обязательна.