Последние записи
- Windows 10 сменить администратора
- Рандомное слайдшоу
- Событие для произвольной области внутри TImage
- Удаление папки с файлами
- Распечатка файла
- Преобразовать массив байт в вещественное число (single)
- TChromium (CEF3), сохранение изображений
- Как в Delphi XE обнулить таймер?
- Изменить цвет шрифта TextBox на форме
- Ресайз PNG без потери прозрачности
Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk
Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
1st
Сен
АРХИВ РАССЫЛКИ
Подписаться на рассылку можно в этой форме:
6 выпуск
|
||||||||||||
От ведущего
Сегодня, уже в 6 выпуске нашей с вами рассылки, мы будем рассматривать средства по созданию сайтов. Это конечно очень большая тема и в будущем мы еще не раз к ней вернемся, но сейчас можно познакомиться с основами. Спасибо Alar’ у за статью. На форуме достаточно много новых интересных тем, так что заглядывайте , Ну а в этом выпуске для вас обзор новеньких тем у нас на форуме. Нашел интересную новость для обсуждения. Посмотрите в выпуске. Ну а пока, я с вами прощаюсь до следующего четверга и желаю успехов! |
||||||||||||
__________________________________________________________ | ||||||||||||
Средства по созданию сайтов .
Требования к разработчикам сайтов Web-сервер — это компьютер, на котором расположена информация. Браузер запрашивает домен, и после нахождения, к какому ip-адресу относится этот домен, загружает главную страницу в окне. Пользователь может просматривать информацию, к которой он может иметь доступ. С появлением вирусов, стали задумываться о безопасности данных на сервере и локальных компьютерах. Для доступа к данным стали использовать пароли. Для ftp протокола это ftp:\<имя пользователя>:<пароль>@<имя сервера>\<имя каталога>\<имя файла>. Для пользовательских компьютеров условились, что на них не должны выполняться приложения управляемые с сервера и скрипты не могут исполняться на компьютере пользователя, только на веб-сервере. Потому перед веб-мастерами стоит задача написания программы, которая будет работать на сервере и выполнять все необходимые функции, например: регистрация, авторизация пользователей, доступ пользователей к файлам, организация диалога с посетителем сайта. Также необходимо обеспечить удобную навигацию по сайту и графическое оформление, дизайн. |
1st
$Align — директива компилятора
Определяет, были ли данные выровнены или упакованы
- {$Align Off}
- {$Align On}
Описание:
С $Align On (по умолчанию), сложные типы данных, такие как записи, хранят свои элементы, выровненные по 2, 4 или 8-байтовой границе, соответственно типу данных. Например, поле типа Word будет выровнено по 4-байтовой границе.
С $Align On, значением по умолчанию, вы можете перекрыть эти настройки с помощью опции packed для сложных типов данных.
Выравнивание обеспечивает оптимальную скорость доступа.
$Align Off указывает Delphi игнорировать выравнивание, и таким образом пакует данные.
Пример кода:
// Use the default setting : $Align+
// Declare an unpacked, aligned record
TAlignedRecord = Record
name1 : string[4];
floater : single;
name2 : char;
int : Integer;
end;
// Declare a packed record
TPackedRecord = Packed Record
name1 : string[4];
floater : single;
name2 : char;
int : Integer;
end;
// Set alignment off
{$Align Off}
// Declare an unpacked record
// This will get treated as if packed was on
TUnPackedRecord = Record
name1 : string[4];
floater : single;
name2 : char;
int : Integer;
end;
var
alignedRec : TAlignedRecord;
packedRec : TPackedRecord;
unPackedRec : TUnPackedRecord;
begin
ShowMessage(‘Aligned record size = ‘+IntToStr(SizeOf(alignedRec)));
ShowMessage(‘Packed record size = ‘+IntToStr(SizeOf(packedRec)));
ShowMessage(‘UnPacked record size = ‘+IntToStr(SizeOf(unPackedRec)));
end;
Результат выполнения:
Packed record size = 14
UnPacked record size = 14
1st
CD ПРИВОД.
CD ПРИВОД.
CD привода (далее просто CD)я думаю пользуются все без исключения. Давайте разберём как создать несложную программу открытия CD. Создадим новый проект. Кидаем на форму ComboBox и две Button. Создадим две функции:
function CDOpen(Drive: PChar): Boolean;
var
Res: MciError;
OpenParm: TMCI_Open_Parms;
Flags: DWord;
S: string;
DeviceID: Word;
begin
Result := false;
S := Drive + ‘:’;
Flags := mci_Open_Type or mci_Open_Element;
with OpenParm do
begin
dwCallback := 0;
lpstrDeviceType := ‘CDAudio’;
lpstrElementName := PChar(S);
end;
Res := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
if Res <> 0 then
exit;
DeviceID := OpenParm.wDeviceID;
try
Res := mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
if Res = 0 then
exit;
Result := True;
finally
mciSendCommand(DeviceID, MCI_OPEN, Flags, Longint(@OpenParm));
end;
end;
function CDClose(Drive: PChar): Boolean;
var
Res: MciError;
OpenParm: TMCI_Open_Parms;
Flags: DWord;
S: string;
DeviceID: Word;
begin
Result := false;
S := Drive + ‘:’;
Flags := mci_Open_Type or mci_Open_Element;
with OpenParm do
begin
dwCallback := 0;
lpstrDeviceType := ‘CDAudio’;
lpstrElementName := PChar(S);
end;
Res := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
if Res <> 0 then
exit;
DeviceID := OpenParm.wDeviceID;
try
Res := mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_CLOSE, 0);
if Res = 0 then
exit;
Result := True;
finally
mciSendCommand(DeviceID, MCI_CLOSE, Flags, Longint(@OpenParm)) else
end;
end;
В процедуре создания формы пишем
procedure TForm1.FormCreate(Sender: TObject);
var
w:dword;
Root:string;
I, K:integer;
begin
k:=0;
w:=GetLogicalDrives;
Root := ‘#:’;
for i := 0 to 25 do
begin
Root[1] := Char(Ord(‘A’)+i);
if (W and (1 shl i))>0 then
if GetDriveType(Pchar(Root)) = DRIVE_CDROM then
begin
k:=k+1;
Driv[k] := Root;
ComboBox1.Items.Add(Driv[k]);
ComboBox1.Text := Driv[1];
end;
end;
end;
Далее в нажатиях на кнопки пишем:
procedure TForm1.Button1Click(Sender: TObject);
begin
CDOpen(PChar(ComboBox1.Text);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
CDClose(PChar(ComboBox1.Text);
end;
Всё программа готова.
1st
ASSEMBLER&WIN32. КУРС МОЛОДОГО БОЙЦА. УРОК 7.
Переходы (прыжки)
1st
УЧЕБНИК ПО АССЕМБЛЕРУ
Туториал «ASSEMBLER&WIN32. Курс молодого бойца» — справочный материал, для тех, кто хочет научиться программировать в ассемблере. Этот справочник будет понятен чайникам, также будет интересен для тех, кто программировал в ассемблере под Dos и хочет попробовать свои силы в среде Win32. Изучение ассемблера необходимо для того чтобы понять как работает процессор, где хранятся данные, как проводятся простые арифметические операции, что такое умножение, циклы.
Programming articles
Создание сайтов на шаблонах
Множество вариантов работы с графикой на канве
Шифруем файл с помощью другого файла
Перехват API функций — Основы
Как сделать действительно хороший сайт
Создание почтового клиента в Delphi 7
Применение паскаля для
решения геометрических задач
Управление windows с помощью Delphi
Создание wap сайта
Операционная система unix, термины и понятия
SQL враг или друг
Возникновение и первая редакция ОС UNIX
Оптимизация проекта в Delphi
Ресурсы, зачем нужны ресурсы
Термины программистов 20 века
Советы по созданию собственного сайта с нуля
Шифруем файл с помощью пароля
Фракталы — геометрия природы
Crypt — Delphi программа для шифрования
Рассылка, зачем она нужна и как ее организовать?
Учебник по C++ для начинающих программистов
Уроки для изучения ассемблера
Загадочный тип PCHAR
Средства по созданию сайтов
Операторы преобразования
классов is и as
Borland Developer studio 2006. Всё в одном
Создание базы данных в Delphi, без сторонних БД
Software engineering articles
1st
СТАТЬЯ 3. СОЗДАНИЕ И УПРАВЛЕНИЕ САЙТОМ
В этой статье я попробую рассказать вам о способах создания и управления собственный сайтом. Создать сайт можно очень разными способами, я расскажу вам о самых популярных и удобных. А управлять сайтом можно также самыми разнообразными способами. Прочитав эту статью вы сможете выбрать тот способ управления сайтом, который подойдет именно вам.
Создать страницы своего сайта можно как в простой программе, так и в сложном редакторе. Конечно, самым привлекающим в программе является его просто и в то же время функциональность. Если вы не знаете о языках программирования (языки Веб-программирования станут темой одной из следующих статей из этой серии), вам наверно необходимо что-нибудь простое. Если же у вас есть какой-то опыт, и вы знаете хотя бы основы языка, то вам будет и удобнее с редактором страниц. Но в то же время, существуют программы, которые будут полезны и необходимы, как начинающим Веб-мастерам, так и опытным. Такими программами для меня являются Microsoft Office FrontPage, Macromedia HomeSite и другие .С этой программой очень удобно. Но появляются новые и даже лучшие программы, среди которых также может быть много полезного. Вообще, если зайти в ближайший компьютерный магазин и купить один из дисков о создании сайтов (а таких очень много) то и там вы найдете что-нибудь подходящее себе. В подобных программах вам необходимо только разобраться, знаний в языке программирования даже не требуется.
1st
ОСНОВНАЯ ЧАСТЬ: 1. ДЛИНА БЕРЕГОВОЙ ЛИНИИ. ФРАКТАЛЬНАЯ РАЗМЕРНОСТЬ. ПОНЯТИЕ ФРАКТАЛА.
При изучении географии вы, конечно, помните, что каждая из стран имеет свою площадь территории и длину границы, в частности, если страна омывается каким-либо морем или океаном, то она имеет морскую границу определенной длины. Задумывались ли вы когда-либо, как эту длину границы определяют? В 1977 г. американский математик Бенуа Мандельброт поставил перед собой следующий вопрос: чему равна длина береговой линии Великобритании? Оказалось, что корректно ответить на этот «детский вопрос» не удается. В 1988 г. норвежский ученый Енс Федер решил выяснить, чему равна длина береговой линии Норвегии. Обратите внимание на то, что побережье Норвегии сильно изрезано фиордами. Другие ученые задавали себе аналогичные вопросы о длинах береговых линий побережий Австралии, Южной Африки, Германии, Португалии и других стран.
Мы можем измерить длину береговой линии только приблизительно. По мере того как мы уменьшаем масштаб, нам приходится измерять все больше маленьких мысов и бухт — длина береговой линии увеличивается, и объективного предела уменьшению масштаба (и, тем самым, увеличению длины береговой линии) просто не существует; мы вынуждены признать, что эта линия имеет бесконечную длину. Мы знаем, что размерность прямой линии равна одному, размерность квадрата — двум, а размерность куба — трем. Мандельброт предложил использовать для измерения «чудовищных» кривых дробные размерности — размерности Хаусдорфа — Безиковича. Бесконечно изломанные кривые, подобные береговой линии — не вполне линии. Они как бы «заметают» часть плоскости, подобно поверхности. Но они и не поверхности. Значит, резонно предположить, что их размерность больше одного, но и меньше двух, то есть это дробно-размерные объекты.
1st
УРОК 24. ПЕРЕГРУЗКА ОПЕРАТОРОВ
УРОК 24. ПЕРЕГРУЗКА ОПЕРАТОРОВ
Как вы уже знаете, тип переменной определяет набор значений, которые она может хранить, а также набор операций, которые можно выполнять над этой переменной. Например, над значением переменной типа int ваша программа может выполнять сложение, вычитание, умножение и деление. С другой стороны, использование оператора плюс для сложения двух строк лишено всякого смысла. Когда вы определяете в своей программе класс, то по существу вы определяете новый тип. А если так, C++ позволяет вам определить операции, соответствующие этому новому типу.
Перегрузка оператора состоит в изменении смысла оператора (например, оператора плюс (+), который обычно в C++ используется для сложения) при использовании его с определенным классом. В данном уроке вы определите класс string и перегрузите операторы плюс и минус. Для объектов типа string оператор плюс будет добавлять указанные символы к текущему содержимому строки. Подобным образом оператор минус будет удалять каждое вхождение указанного символа из строки. К концу данного урока вы изучите следующие основные концепции:
- Вы перегружаете операторы для улучшения удобочитаемости ваших программ, но перегружать операторы следует только в том случае, если это упрощает понимание вашей программы.
- Для перегрузки операторов программы используют ключевое слово C++ operator.
- Переопределяя оператор, вы указываете функцию, которую C++ вызывает каждый раз, когда класс использует перегруженный оператор. Эта функция, в свою очередь, выполняет соответствующую операцию.
- Если ваша программа перегружает оператор для определенного класса, то смысл этого оператора изменяется только для указанного класса, оставшаяся часть программы будет продолжать использовать этот оператор для выполнения его стандартных операций.
- C++ позволяет перегружать большинство операторов, за исключением четырех, перечисленных в таблице 24, которые программы не могут перегружать.
Перегрузка операторов может упростить наиболее общие операции класса и улучшить читаемость программы. Найдите время для эксперимента спрограммами, представленными в этом уроке, и вы обнаружите, что перегрузка операторов выполняется очень просто.
1st
УРОК 23. КОНСТРУКТОР И ДЕСТРУКТОР
При создании объектов одной из наиболее широко используемых операций которую вы будете выполнять в ваших программах, является инициализация элементов данных объекта. Как вы узнали из урока 22, единственным способом, с помощью которого вы можете обратиться к частным элементам данных, является использование функций класса. Чтобы упростить процесс инициализации элементов данных класса, C++ использует специальную функцию, называемую конструктором, которая запускается для каждого создаваемого вами объекта. Подобным образом C++ обеспечивает функцию, называемую деструктором, которая запускается при уничтожении объекта. В данном уроке конструктор и деструктор рассматриваются более подробно. К концу этого урока вы освоите следующие основные концепции:
- Конструктор представляет собой метод класса, который облегчает вашим программам инициализацию элементов данных класса.
- Конструктор имеет такое же имя, как и класс.
- Конструктор не имеет возвращаемого значения.
- Каждый раз, когда ваша программа создает переменную класса, C++ вызывает конструктор класса, если конструктор существует.
- Многие объекты могут распределять память для хранения информации; когда вы уничтожаете такой объект, C++ будет вызывать специальный деструктор, который может освобождать эту память, очищая ее после объекта.
- Деструктор имеет такое же имя, как и класс, за исключением того, что вы должны предварять его имя символом тильды (~).
- Деструктор не имеет возвращаемого значения.
Термины конструктор и деструктор не должны вас пугать. Вместо этого представьте конструктор как функцию, которая помогает вам строить (конструировать) объект. Подобно этому, деструктор представляет собой функцию, которая помогает вам уничтожать объект. Деструктор обычно используется, если при уничтожении объекта нужно освободить память, которую занимал объект.
1st
КОНТАКТЫ
КОНТАКТЫ
написать в » клуб программистов «
Указанный e-mail: admin@programmersclub.ru
заявка на публикацию программы, статьи
Указанный e-mail: admin@programmersclub.ru
Облако меток
css реестр ассемблер timer SaveToFile ShellExecute программы массив советы word MySQL SQL ListView pos random компоненты дата LoadFromFile form база данных сеть html php RichEdit indy строки Win Api tstringlist Image мысли макросы Edit ListBox office C/C++ memo графика StringGrid canvas поиск файл Pascal форма Файлы интернет Microsoft Office Excel excel winapi журнал ПРОграммист DelphiКупить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту
пеллетные котлы
Пеллетный котел Emtas
Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)