Язык программирования Delphi (Делфи). Определение размера файла Что такое делфи в информатике

Начнем наше ознакомление с программированием в среде Delphi с таких вопросов, как суть собственно программирования, его основы и подвиды. Также мы рассмотрим, что представляет собой среда Delphi, чем она отличается от других, и какой путь был ей пройден с момента появления 10 лет назад.

Что такое программирование

Итак, прежде всего, уясним для себя, что же понимают под термином программирования? Сейчас многие называют себя программистами, не зная даже о том, что это такое: на проверку оказывается, что человек, изменивший пару строк кода в HTML-документе уже готов считать себя программистом. Но на самом деле, работая с HTML (именно с самим HTML), стать программистом нельзя, поскольку HTML, что явствует из названия (Hypertext Markup Language - язык разметки гипертекста), языком программирования не является.

В результате мы имеем первое условие: для изучения программирования нужен какой-либо язык программирования. В нашем случае это будет язык Object Pascal последних версий (14.0 или 15.0).

Далее, допустим кто-то, называющий себя программистом, не только правил пару строк кода HTML, но и видел Delphi, и даже нарисовал в нем форму с 2-3 кнопками и текстовым полем. Это ли программист? Скорее всего, тоже нет. Дело в том, что под визуальной оболочкой, на самом деле, скрывается сложнейший механизм, обеспечивающий взаимодействия элементов управления (тех же кнопок) с пользователем и операционной системой - с одной стороны, и позволяющий выполнять практически любые вычислительные действия - с другой. При всем этом следует уметь делать главное - составлять алгоритмы поведения программы - будь то ее реакция на нажатие той или иной кнопки, или создание функции для решения сложного математического уравнения.

Так вот, программирование в, своем современном понятии, включает в себя знание принципов работы операционной системы, взаимодействия ее компонентов и внутреннего устройства. Ну и при этом сохраняется классическое определение программирования, а именно - умение составлять алгоритмы, математические и поведения программы. Все это реализуется в контексте какого-либо языка программирования, например, того же Object Pascal из Delphi.

Что такое Delphi

Теперь мы знаем, что программирование - есть составление алгоритмов плюс использование языка программирования. Но если изучаемым нами языком является Object Pascal, то что такое Delphi? Ответ таков: Delphi - это RAD, или Rapid Application Development - среда быстрой разработки приложений. Иначе говоря, Delphi включает в себя не только все средства для работы с языком Object Pascal (тем более, что начиная с версии, 2005 в Delphi имеется поддержка других языков программирования, в частности, C#), но и ряд дополнительных средств, призванных максимально ускорить и упростить создание программ. К таковым средствам относятся, прежде всего, визуальный редактор форм, при помощи которого за считанные минуты и без лишних усилий можно создать полноценно выглядящую программу, а так же прочие составные части визуальной составляющей разработки программ.

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

Вкупе с развитыми средствами для написания и отладки кода - специализированным текстовым редактором, оптимизирующим компилятором и отладчиком, Delphi являет собой средство быстрой разработки приложений. При этом основой Delphi для конечного пользователя является IDE - Integrated Development Environment (интегрированная среда разработки), которая объединяет в себе редактор кода и средства визуальной разработки, а также связывает это с компилятором, средствами разработки баз данных и прочими составными частями Delphi.

Delphi и другие

Разумеется, Delphi - не единственная среда быстрой разработки приложений. Существуют и другие RAD, столь же удобные для визуальной разработки программ, например, Visual Basic. Но BASIC известен как не самый мощный и удобный язык программирования, кроме того, программы на нем отличаются сравнительно невысоким быстродействием.

Вместе с тем, имеются и не менее мощные, по сравнению с Object Pascal, языки программирования, имеющие свои RAD - прежде всего, это язык C++ вместе с таким наиболее известными средствами разработки, как Visual C++ и C++ Builder. Однако C++ не в лучшую сторону отличается от Object Pascal с точки зрения простоты изучения. Кроме того, сборка и отладка программ на C++ происходит сравнительно медленно, хотя готовые программы выполняются так же быстро, как и созданные при помощи Delphi.

ПРИМЕЧАНИЕ
Отметим, что в момент своего появления в 1995 году, Delphi была действительно уникальной средой, объединяющей в себе визуальное программирование с оптимизирующим компилятором и средствами для работы с базами данных.

В результате мы получаем практически идеальный продукт для быстрой разработки программ: с одной стороны простота и удобство, сравнимые с Visual Basic, а с другой - мощь, скорость и гибкость, характерные для C++.

Здесь следует отметить, что используемый в Delphi язык Object Pascal имеет мало общего со своим прародителем - языком программирования Pascal, который, возможно, вы изучали в школе или в ВУЗе. Прежде всего, в Delphi применяется чистая объектно-ориентированная модель программирования, в то время как Pascal был обычным процедурным языком. В чем же суть отличий процедурного программирования от объектно-ориентированного? Вот этот вопрос мы и обсудим в следующих двух параграфах.

Процедурное программирование и алгоритмы

Практически все современные языки программирования являются процедурными по своей сути. Это означает, что каждая программа состоит из набора процедур, каждая из которых решает ту или иную задачу, при этом одна процедура может вызывать любую другую, в том числе и саму себя (последнее, т.е. вызов процедурой самой себя, называется рекурсией). Собственно программа составляется на основе алгоритмов, причем достаточно всего трех их разновидностей - выбора (развилки), повтора (цикла) и перехода. Впрочем, последний тип на практике практически не используется ввиду своей дурной репутации (речь о GOTO - некогда любимом, от безысходности, операторе BASIC -программистов).

Давайте рассмотрим простейший алгоритм - для игры "угадай число". Логика его работы состоит в том, что требуется проверить, является ли число большим или меньшим, чем загаданное, и если это так, ты вывести соответствующую подсказку, а если оно не больше и не меньше (т.е. совпадает) - то игра заканчивается. Блок-схема такого алгоритма будет состоять из 2 ветвлений (рис. 1.1).

Рис. 1.1. Блок-схема простого алгоритма

Первым делом здесь у пользователя запрашивается число A, которое дважды сравнивается с предварительно заданным числом B. Сначала проверяется, не является ли число A больше, чем B, и если да, то программа сообщает, что произошел "перелет", и возвращается на точку ввода числа. Если число не больше, то происходит второе сравнение - на то, не является ли A меньше B. Если это так, то выводится сообщение о том, что число меньше ("недолет") и, опять-таки, происходит возвращение к началу. Но если число A не меньше числа B, то, учитывая тот факт, что на данный момент уже известно, что оно и не больше, следовательно, оно равно числу B, и программа завершает свою работу. При этом она может вывести поздравление пользователя с тем, что он угадал число.

Данный алгоритм может быть частью другого алгоритма. Например, здесь не предусмотрена генерация самого числа, которое следует отгадать. Так же отсутствует возможность повторной игры. Чтобы исправить эту ситуацию, рассмотрим блок-схему алгоритма, управляющего выполнением программы в целом (рис. 1.2).


Рис. 1.2. Блок-схема управления программой

В начале выполнения генерируется новое число, которое будет отгадывать пользователь. Затем идет собственно блок угадывания, уже рассмотренный нами (см. рис. 1.1), - здесь он представлен в виде одного простого модуля, поскольку на ход выполнения программы в целом не влияет. По завершению этого блока мы имеем единственное ветвление - в зависимости от того, что ответит пользователь на предложение повторить игру. Так, если ответ будет положительным, то программа должна будет перейти к началу, т.е. к генерации нового числа. Если же пользователь отказывается, то работа программы должна быть завершена.

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

Об объектно-ориентированном программировании

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

ПРИМЕЧАНИЕ
Под термином "объект" в программировании понимают некий сложный тип данных, к которому могут быть привязаны уникальные для данного типа свойства, а в случае ООП - также и методы.

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

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

В Object Pascal все классы происходят от единого предка - класса TObject, который реализует такие общие для всех классов действия над объектом, как создание и удаление.

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

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

Еще одна важная составная деталь, характерная для ООП - это скрытие, которое позволяет делать невидимым ряд свойств объектов. Иными словами, если у нас может быть определен объект типа "машина", для которого, в свою очередь, определены такие свойства, как шасси, мотор и колеса. Так вот, если мотор и колеса, можно сделать видимыми (и доступными) повсеместно, где только доступен сам класс "машина", то шасси - нет. Соответственно доступ к такому свойству можно будет получить только в тех частях программы, в которых производится описание самого объекта "машина". Такие свойства называют защищенными.

Подробнее об объектно-ориентированном программировании будет рассказано во второй части настоящего издания.

Визуальное программирование и Delphi

Итак, Delphi являет собой среду, работающую с объектно-ориентированным структурным языком программирования Object Pascal. В дополнение к этому, Delphi является еще и средой визуальной разработки. Иначе говоря, уже в процессе создания программы видно, как она будет выглядеть во время выполнения. Визуальное программирование в разы сокращает время, необходимое на создание пользовательского интерфейса для приложений Windows. До появления визуальных средств разработки, программирование под Windows было сопряжено с большими трудностями, поскольку требовалось практически вслепую вычислять расположение каждого элемента управления в окне приложения, что приводило к множеству ошибок (рис. 1.3).


Рис. 1.3. Классический и визуальный подходы к созданию интерфейса

То, что Delphi является визуальной средой разработки, наносит свой отпечаток и на язык программирования. В частности, в нем предусмотрены специальные средства для того, чтобы определенные свойства классов могли быть доступны уже на этапе разработки программы, а не только во время выполнения. Но самой важной частью всего этого великолепия является библиотека классов - VCL (Visual Component Library). Именно VCL скрывает все острые углы внутренностей Windows, и позволяет легко создавать приложения, не вступая в затяжную войну с обработкой системных сообщений, обратных вызовов, дескрипторов и указателей.

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

Визуальные компоненты мы детально рассмотрим в 3-й части этой книги.

Версии Delphi и их отличия

В завершение вводной части рассмотрим различия между версиями Delphi, попутно изучив историю развития этой замечательной среды разработки.

Delphi 1 . Вышедший незадолго до появления Windows 95, Delphi 1.0 был первым инструментом разработки приложений Windows (3.1), объединившим в себе оптимизирующий компилятор, визуальную среду разработки и мощные средства для работы с базами данных. Для языка Pascal это стало настоящим перевоплощением - он стал Object Pascal.

Delphi 2 . Вышедшая через год 2-я версия Delphi предлагала все то же, но уже для 32-разряных версий Windows (95/NT), опять-таки став первым средством, сочетающим 32-битный компилятор, средства для работы с БД и визуальную среду разработки, поддерживающую OLE (а после выхода обновленной Delphi 2.01 - и ActiveX). Язык так же изменился, став ориентированным на 32-разрядное применение.

Delphi 3 . Дальнейшее совершенствование Delphi по всем направлениям привело к выходу 3-й версии, имевшей расширенный набор инструментов для создания приложений благодаря поддержке COM и ActiveX. В этой версии также впервые был сделан акцент на возможности создания приложений для Интернета, а так же появился нетипизированный тип данных - variant.

Delphi 4 . Еще одна ключевая веха развития. В этой версии было введено много нового и полезного для упрощения разработки приложений, включая новую среду с динамическими подсказками и т.д. Была усовершенствована модель работы с компонентами (VCL), появилась возможность быстрого использования таких технологий, как MIDAS, DCOM и CORBA. В этой версии так же был усовершенствован язык Object Pascal: появились новые черты, свойственные современному ООП, были введены новые типы данных, включая 64-битные.

Delphi 5 . Изменений в Delphi 4 было так много, что, к сожалению, не обошлось без досадных накладок и ошибок. Результатом был выпуск 3-х пакетов обновлений (наши пираты продавали их под вывесками Delphi 4.1, 4.2 и 4.3). Но самым полным и правильным пакетом обновлений следует считать Delphi 5 - в этой версии было доведено до ума все то, что было начато в Delphi 4.

Delphi 6 . С выходом шестой версии Borland провозгласила новую, кросс-платформенную эпоху в Delphi, параллельно выпустив версию Delphi для ОС Linux (Kylix 1.0). Теперь при создании приложения можно было выбирать его тип - для Windows, или же универсальное. Соответственно, к библиотеке VCL добавилась библиотека CLX, совместимая как с Windows, так и с Linux. Кроме того, в 6-й версии наконец-то появились "родные", а не чужеродные ActiveX, компоненты для работы с Интернетом, причем сразу в обоих вариантах - и для VCL и для CLX. Начиная с этой версии, сам язык программирования Object Pascal официально называется Delphi.

Delphi 7 . Дальнейшее развитие Delphi 6, улучшенная библиотека CLX и новая корреспондирующая версия среды разработки под ОС Linux - Kylix 3. Вместе с тем, начиная с Delphi 7, Borland озаботилась вопросом совместимости с еще одной платформой - Microsoft .NET, для чего некоторые изменения были внесены как в VCL, так и в язык (и, соответственно, в компилятор).

Delphi 8 . Первая версия Delphi, ориентированная на работу с платформой Microsoft.NET. В этой версии разработчики рискнули изменить интерфейс среды, сделав его похожим на продукцию Microsoft - нового крупного акционера Borland. Поддержка, соответственно, была Kylix прекращена.

Delphi 2005 . Менее чем через год после выхода Delphi 8, появилась новая версия, в которой спешно вернули возможность работать в классическом стиле IDE при разработке приложений для Windows. Вместе с тем, Delphi 2005, в случае разработки приложений специально для платформы NET, позволяет работать не только с языком Delphi, но и с C#. При этом в сам язык Delphi были введены такие новшества, как оператор for…in и встраиваемые процедуры и функции.

Delphi 2006 . Последняя версия Дельфи, выпущенная фирмой Borland. Так же была выпущена облегченная версия - Turbo Delphi . Дальше началось странствие по другим разработчикам.

Delphi 2007 . Версия, выпущенная CodeGear. Добавлена поддержка интерфейса Aero для Windows Vista.

Delphi 2009 . Версия, выпущенная Embarcodero. Реализована поддержка Unicode в VCL и RTL, заменены обращения ко всем функциям Windows API на аналоги в Unicode, добавлены обобщенные типы и анонимные методы.

Delphi 2010 . Поддержка Windows 7, компоненты для работы с касаниями и жестами, компоненты dbExpress теперь официально поддерживает Firebird.

Delphi XE (Delphi 2011) . Добавлена поддержка для облачных вычислений.

Передо мной никогда не стояла задача определения размера файла Delphi . Но после того как где-то увидел вопрос: "как определить размер файла ", мне тоже стало интересно.

Определение размера файла это то же самое, что определение роста удава в известном мультике! Сколько байтов в него поместится, таков и его размер. План такой:

  1. Задаём тип данных размером 1 байт. Это будет запись.
  2. Определяем файловую переменную этого типа.
  3. Начинаем с начала файла и переходим к концу. Сколько переходов - столько и байтов в файле!
Программа будет состоять из Формы , на которую бросим компонент выбора файла - OpenDialog и кнопку Button , по нажатию на которую и будем выбирать файл. Вот, собственно, и обработчик этой кнопки:

procedure
type TSize = Record
Bait: byte;
end;
var F: File of TSize;
Size: Integer;
begin
Size:=0;
with OpenDialog1 do
if Execute then
begin
AssignFile(F, FileName);
Reset(F);
while (not EOF(F)) do
begin
Size:=Size+1;
seek(F, Size);
end;
CloseFile(F);
end;
end;

Программа была написана за пять минут, что называется, "на коленке". Она работает, и для файлов размером до нескольких мегабайт время ожидания результата невелико, несколько секунд. Для больших файлов ожидание затягивается, и программа выглядит "зависшей". Можно изменить программу так, чтобы она считала килобайты (заменить seek(F, Size ) на seek(F, Size*1024 )). Скорость работы возрастёт в 1024 раза, и уже будет приемлемой.

Это была ещё одна демонстрация приёмов работы с файлами. А на самом деле всё гораздо проще! Размер файла возвращается встроенной функцией FileSize . А файл достаточно описать как имеющий тип byte :

procedure TForm1.ButtonClick(Sender: TObject);
var F: File of byte;
Size: Integer;
begin
with OpenDialog1 do
if Execute then
begin
AssignFile(F, FileName);
Reset(F);
Size:=Filesize(F);
Form1.Caption:=IntToStr(Size); // Выводим информацию о размере в заголовок Формы
CloseFile(F);
end;
end;

Есть альтернативный способ работы с файлами Delphi , в котором файл рассматривается как объект. Там также есть встроенные способы определения размера файла. Также приведу процедуру целиком:

procedure TForm1.ButtonClick(Sender: TObject);
var F: TFileStream;
begin
with OpenDialog1 do
if Execute then
begin
F:=TFileStream.Create(Filename, fmOpenRead);
Caption:=IntToStr(F.Size);
F.Free;
end;
end;

Эта процедура выглядит компактнее, работает быстрее, но и требует дополнительной подготовки.

Delphi - что это?

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

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

Несколько лет назад рядовому программисту оставалось только мечтать о создании собственных программ, работающих в среде Windows, т. к. единственным средством разработки был Borland C++ for Windows, явно ориентированный на профессионалов, обладающих серьезными знаниями и опытом.

Бурное развитие вычислительной техники, потребность в эффективных средствах разработки программного обеспечения привели к появлению систем программирования, ориентированных на так называемую "быструю разработку", среди которых можно выделить Borland Delphi и Microsoft Visual Basic . В основе систем быстрой разработки (RAD-систем, Rapid Application Development - среда быстрой разработки приложений) лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть рутинной работы, оставляя программисту работу по конструированию диалоговых окон и функций обработки событий. Производительность программиста при использовании RAD-систем - фантастическая!

Delphi - это среда быстрой разработки, в которой в качестве языка программирования используется язык Delphi. Язык Delphi - строго типизированный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам Object Pascal .

В настоящее время программистам стала доступна очередная версия пакета Delphi - Borland Delphi 7 Studio . Как и предыдущие версии, Borland Delphi 7 Studio позволяет создавать самые различные программы: от простейших однооконных приложений до программ управления распределенными базами. В состав пакета включены разнообразные утилиты, обеспечивающие работу с базами данных, XML-документами, создание справочной системы, решение других задач. Отличительной особенностью седьмой версии является поддержка технологии.NET.

Borland Delphi 7 Studio может работать в среде операционных систем от Windows 98 до Windows XP. Особых требований, по современным меркам, к ресурсам компьютера пакет не предъявляет: процессор должен быть типа Pentium или Celeron с тактовой частотой не ниже 166 МГц (рекомендуется Pentium II 400 МГц), оперативной памяти - 128 Мбайт (рекомендуется 256 Мбайт), достаточное количество свободного дискового пространства (для полной установки версии Enterprise необходимо приблизительно 475 Мбайт).

Об этой книге

В книге, которая посвящена программированию в конкретной среде разработки, необходим баланс между тремя линиями - языком программирования, техникой и технологией программирования (программированием как таковым) и средой разработки. Уже при первом знакомстве со средой разработки, представлении ее возможностей у автора возникает проблема: чтобы описать процесс разработки программы, объяснить, как работает программа, нужно оперировать такими терминами, как объект , событие , свойство , понимание которых на начальном этапе изучения программирования весьма проблематично. Как поступить? Сначала дать описание языка, а затем приступить к описанию среды разработки и процесса программирования в Delphi? Очевидно, что это не лучший вариант. Поэтому при изложении материала принят подход, в основу которого положен принцип соблюдения баланса между языком программирования, методами программирования и средой разработки. В начале книги некоторые понятия, без которых просто невозможно изложение материала, даются на уровне определений.

Книга, которую вы держите в руках, - это не описание языка Delphi или среды разработки Delphi 7 Studio. Это учебное пособие по программированию на языке Delphi в одноименной среде. В нем рассмотрена вся цепочка, весь процесс создания программы: от разработки диалогового окна и функций обработки событий до создания справочной системы и установочного диска.

Цель этой книги может быть сформулирована так: научить программировать в среде Delphi, т. е. создавать законченные программы различного назначения: от простых однооконных приложений до вполне профессиональных программ работы с базами данных.

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

Итак, в данной статье речь пойдет о том, как определить разрядность операционной системы Windows при программированиии на языке Delphi. Это нужно для того, чтобы например выбрать ту или иную версию драйвера - x86 (32 разрядная) или x64 (64 разрядная).

И так, приступим.

Создаем новый проект, кидаем на форму компонент Label (текстовая надпись).

Затем переходим в редактор исходного кода и в разделе с переменными var добавляем строковую переменную razr (тип данных string, т.е строка).

var Form1: TForm1;

razr: string;

После этого два раза нажимаем на форму, копируем и вставляем в нее следующий код (в процедуре создания главной формы TForm1.FormCreate), между фразами begin и end; (то есть началом и концом процедуры).

{с помощью функции Get Enviroment Variable считываем знаение переменной ProgramFiles(X86)

если система 32 разрядная, то она будет иметь пустое значение

если 64 разрядная, то она будет иметь знаение C:Program Files(x86)

т.е папка, в которую устанавливаются 32 разрядные версии программ}

razr:= GetEnvironmentVariable("ProgramFiles(x86)");

label1.Caption:= razr;

if (razr = "") then

begin

label1.Font.Color:=clRed; { Меняет цвет надписи, вы можете выбрать любой на ваш вкус, например clGreen - зеленый}

label1.Caption:= "У вас x86"; {вместо имени метки labl1 вы можете написать любое другое, например metka}

else

begin

label1.Font.Color:=clBlue; { Меняет цвет надписи, вы можете выбрать любой на ваш вкус, например clGreen - зеленый}

label1.Caption:= "У вас x64";

end;

Как же работает программа?

C помощью функции Get Enviroment Variable происходит считывание значения переменной окружения в Windows ProgramFiles(X86).

Если система 32 разрядная, то она будет иметь пустое значение.

Если 64 разрядная, то она будет иметь знаение C:Program Files(x86) т.е это папка, в которую устанавливаются 32 разрядные версии программ.

Собственно на этом всё.

Вот, что получилось у меня.

Ниже вы можете скачать архив с исходником программы, чтобы попробовать самостоятельно разобраться в ее работе.


Комментарии ()

wdfm 90

На Windows 7 x64 программа работает отлично, можно пользоваться

Edward 300

Все кто будет разводить офф топик + нецензурную брань, я буду давать бан на 1 день! Это не касается администраторов.
.php?board=18.0

Форум не за просто так я делал!

Edward 300

Delphi является языком программирования и средой разработки программного обеспечения. Он разработан Borland (ранее известный как Inprise). Язык программирования Делфи, ранее известный как Object Pascal (Pascal с объектно-ориентированными расширениями), первоначально ориентированный только на Microsoft Windows, но в настоящее время позволяет строить собственные приложения для Linux и Microsoft. NET Framework, и других (см. ниже). Программирование для начинающих.
Наиболее популярное использование - разработка настольных приложений и баз данных предприятия, а как инструмент язык программирования Делфи может использоваться и для большинства типов развивающихся проектов. Это был один из первых языков, который стал известным как инструмент RAD (быстрая разработка приложений), когда вышел в 1995 году. Delphi 2, вышедший год спустя, поддерживал 32-разрядную среду Windows , и а только несколько лет спустя вышли C, C + + Builder. В 2001 году стала доступна версия под ОС Linux известная как Kylix (классическая греческая урна). Каждый год выходило по одной новой версии, в 2002 году продукт стал известен как Delphi 7 Studio, язык стал официально называться язык программирования Delphi, а не Object Pascal, а также была добавлена поддержка Linux (через Kylix) и. NET (через Предварительный компилятор). Полная поддержка. NET запланирована на предстоящий Delphi 8. Программирование для чайников.
Основные компоненты Delphi и Kylix: язык Delphi (ранее официально известный как языка Object Pascal), ВК / CLX (Visual Component Library), сильные связи с базами данных, в сочетании с мощной IDE (Integrated Development Environment) и дополнительными инструментами поддержки.
Замечательные особенности языка Delphi включают:

  • Прозрачная обработка объектов через ссылки или указатели
  • Свойства как часть языка, вкупе с функциями Get и Set, которые являются прозрачной инкапсуляцией доступа к членам полям
  • Свойства индекса и свойствами по умолчанию, которые обеспечивают доступ к коллекции удобным и прозрачным способом
  • Делегаты или по-другому методы указателей безопасного типа, которые используются для приведения в действие события вызванных компонентами
  • Делегирование реализации интерфейса в поле или свойство класса
  • Простота внедрения обработчики Windows сообщение, отметь метод класса с числом / имя окна сообщений для обработки
  • Большинство функций, перечисленных выше, были введены в Delphi первой и адаптированы на других языках позже.

Главный архитектором Delphi, и его предшественника Turbo Pascal, был Андерс Хейлсбергом, пока он не перешел в Microsoft в 1996 году посвятил свое дело основам программирования.
Продукт Delphi распространяется в различных комплектах, каждый из которых предлагает большую функциональность по сравнению с другими:

  • Персональный
  • Профессиональный
  • Предприятие
  • Архитектор

Веские причины для использования Delphi:

  • Очень информативные и полезные сообществу новости
  • Может компилировать в один исполняемый, упрощая распределение и сокращение вопросов с разными DLL
  • VCL и сторонние компоненты, как правило, доступны с полным исходным кодом
  • Мощный и быстрый оптимизирующий компилятор
  • Из одного исходного кода получаются отличные машинные коды для разных ОС
  • Поддержка новейших технологий и стандартов

Клоны и альтернативы

Не будучи способным удовлетворить все потребности программистов, есть целый набор дополнительных средств, которые призваны расширить диапазон решаемых задач с помощью Delphi или это можно сделать с помощью вставки кода на других языках, там где Delphi и Kylix бессильны.
Эти заменители Делфи могут быть использованы в случае невозможности оплатить среду разработки, потребности в бесплатных средах разработки (например, для операционных систем и свободно распространяемого программного обеспечения или в образовательных целях). В большинстве случаев эти альтернативы используются для обучения, а так же для написания серверных компонент, для операционных систем, которые не являются широко распространенными (так было до тех пор, пока не появился Kylix для ОС Linux, котоорая используется в основной массе как ОС для серверов). .
Перечислим некоторые:

  • Free Pascal - замена, которая выпускается в виде компилятора, запускаемого из командной строки. Данная разработка основана на совместимости с основным набором функций как Turbo Pascal, так и Delphi диалектов. Особенности Delphi версий выше 4 реализованы и работают. Работает на большинстве x86 операционных систем, включая Win32, Dos , Linux, BSD и Novell Netware. Поддержка других операционных систем на m68k и PowerPC , статус которых до сих пор меняется очень быстро, не производится. Работа по переносу на платформу SPARC началась.
  • GNU Pascal (отдельно распространяемых часть GNU Compiler Collection) хотя формально не нацелена на диалекты Borland Паскаль, но содержит совместимость с Borland Pascal, и постепенно впитывает особенности языка Delphi, хотя и не подходит для перекомпиляции больших объемов кода Delphi. Это самый плодовитый компилятор с точки зрения операционных систем и процессоров, хотя, и заслуживает упоминания только в качестве последнего варианта.
  • Существует инструмент под названием Pocket студия, которая направлена на компиляцию урезанного кода Delphi для КПК.
  • Virtual Pascal - компилятор, x86 32-разрядный Turbo Pascal и Delphi, совместим в основном с OS/2 и Windows, хотя разработан DOS Extender и экспериментальный Linux кросс-компилятор. Компилятор застрял на уровне около Delphi версии 2, и сайт не претерпел существенных изменений в течение двух лет, но в качестве альтернативы это еще один из лучшимх, с великолепным IDE и отладчиком, хотя Free Pascal тоже не дремлет.
  • BloodShed распространяет очень хороший графический редактор Win32 (хотя и не RAD) как интерфейс для GNU Pascal и Free Pascal.
  • Lazarus усилия направлены на создание среды разработки для Free Pascal. Хотя порт GTK становится полезной для написания небольших приложений, таких как средства конфигурирования, то win32 порт все еще нуждается в значительной доработке.
  • InnerFuse является переводчиком Delphi для встраивания в приложения. Ходят слухи, что работать с несколькими версиями Делфи.
  • WDOSX является Win32 API эмуляции DOS Extender, который может быть использован для получения консольных приложейний написанных на Delphi, работающих на обычной DOS.

Как стать профессионалом по разработке сайтов и начать зарабатывать? Недорогие видео курсы с ознакомительным введением.

© 2024 who-calls-me.ru
Whocallsme - Мир вашего софта