» Borland Delphi Borland Delphi. . . Блог программистов


Блог программистов






20072 Мар

Элементарная работа с файлами

Первое что я рассмотрю это копирование файлов:

procedure TForm1.Button1Click(Sender: TObject);
begin
CopyFile('Откуда\Имя файла','Куда\Новое имя файла',true)
// если файл с таким же именем уже есть то true - если заменять или false если оставить прошлую копию файла
end;

Запись в файл:

program CrtApp;
var
outfile: TextFile;
begin
AssignFile(outfile, 'c:\outfile.txt'); // связываем переменную с файла в который будем писать
Rewrite(outfile);
writeln(outfile, 'Привет МИР!'); // Запись в файл 'c:\outfile.txt' легендарного текста
CloseFile(outfile); // обязательно закрываем файл
end.

Печать текста сразу на принтер:
(more…)

20072 Мар

Панель задач. Пуск

Начнём с общего. Как скрыть и показать Панель задач:

procedure TForm1.Button1Click(Sender: TObject);
begin
ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_HIDE); // Скрыть
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_SHOW); // Показать
end;

Теперь сделаем иконку рядом с часами:
(more…)

20072 Мар

Рабочий стол

Итак, Рабочий стол- это первое что мы видим после загрузки пользователя. Сначала я дам код, как изменить фоновый рисунок на Столе. Вот что надо написать:

implementation

Uses ShlObj, ComObj;

procedure ChangeWallpaper;
const
CLSID_ActiveDesktop: TGUID = '{75048700-EF1F-11D0-9888-006097DEACF9}';
var
ActiveDesktop: IActiveDesktop;
begin
ActiveDesktop := CreateComObject(CLSID_ActiveDesktop)
as IActiveDesktop;
ActiveDesktop.SetWallpaper('Путь к файлу', 0);
ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
end;


(more…)

20072 Мар

Ресурсы. Зачем они нужны.

Всем Hi. В этой статье я хочу рассказать основы работы с ресурсами.

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

Для начала откроем программу редактора ресурсов (стандартная в составе Delphi это Image Editor). Я буду рассматривать именно этот редактор. Создадим новый ресурс File>New…>Resource File
Появится окно, в нём кликните правой кнопкой мыши и в меню выбрать New>Bitmap(картинка) или Icon(иконка) или Cursor(курсор)
В этой статье я рассмотрю Картинки в ресурсе. В начале после нажатия на New>Bitmap появиться диалог в котором мы выбираем ширину, высоту и количество цветов в картинке. Имя картинки нужно переименовать заглавными буквами ЭТО ВАЖНО. Теперь сохраним ресурс (н.р. Resource.res) в папку с проектом.
(more…)

20072 Мар

Шифрование

Первое что надо знать, что это вообще такое и для чего служит:

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

Самый простой способ сделать такое шифрование, по-моему, это чтение текста побуквенно. Для начала разместим на форме Memo, два Edit и четыре Button. Напишем процедуру замены чисел от 0 до 9 и обратную ей процедуру:
(more…)

20071 Мар

Общение между запущенными копиями своих программ.

Рассматривать задачу будем на конкретном примере некого приложения.

Опишем предметную область и постановку задачи:

необходимо чтобы наше приложение, зарегистрировав себя как протокол в системе Windows, позволяло при нажатии на ссылкуу вида testproject:\\xxxxx запустило наше приложение (если оно не запущено) и передало ему параметры ссылки. Если же приложение уже запущено, то нам не обходимо запущеной копии приложения сообщить параметры ссылки.

Ну чтож, задачу описали, приступим к реализации.

Для примера я буду использовать BDS 2006.

Создадим новый проект.

Сначала нам необходимо зарегистрироваться в реестре, чтобы система воспринимала правильно наши ссылки, поэтому:
(more…)

20071 Мар

Оптимизация проекта в Delphi

Здравствуйте, программисты-делфисты. Повидал я не мало многих программ написанных на делфи. Есть хорошие, есть не очень, но их размер меня всегда поражал. 0.6, 1, 5 и даже 10 мегабайт!!! А программки то — тьфу, явно не офис или что-то громоздкое. Вот и решил я написать статью, как правильно оптимизировать свой проект так, чтоб не было казусов: программа должна 2 числа +,-,/,* а занимает места больше чем 400 Кб. Не судите строго, а если есть замечание, пишите: ZETRIX-Soft@mail.ru

  1.     Надо учесть для чего пишется программа, если она что-то должна выполнить, и закрыться (ничего не отображая), то не надо писать так Form1.visible:=false. Надо полностью удалить форму (View\Project (more…)
20071 Мар

Горячие клавиши Делфи

pblog.ru

Сколько лет уже пишу программы на Делфи,
но до сих пор не знал всех горячих клавиш!
То-ли это лень, то-ли тех что знал хватало…

Вообщем хочу привести список горячих клавиш Делфи.
Не знаю куда его приткнуть, поэтому решил здесь написать 🙂
Конечно, я понимаю что он есть в справке,
но лично я, к своему стыду, не прочитал
его там, а нашёл в другом источнике
(наверное как и многие другие)

Оказалось, что я знаю всего лишь около 30%
этого списка.

Думаю что многим будет интересно прочитать его.
Если что-то не правильно написано,
или список неполный — комментируйте.

(more…)

← Предыдущая страница
Page 5 of 5«12345

Облако меток

AdSense клиент компонент api ClientSocket библиотеки dll ServerSocket приложение INTERFACE шифровка байт char работа пароль учеба programmer процессор Application HANDLE Cursor C++ AssignFile хуки win api Project Internet google FASM memo исходники html функция язык System поиск GetLastError алгоритм программист programmersclub сервер форум exe сайт файл проект Assembler шифрование windows delphi