Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
Очень часто мы видим, что во время загрузки Windows на чётном экране выводится какой-то текст. Но как дописать туда что-нибудь своё? Хороший вопрос. Это можно сделать с помощью файла Autoexec.bat, находящегося в корневом каталоге.
Давайте откроем его, вписав в командную строку ("Пуск">"Выполнить") следующее:
SysEdit
Эта команда позволяет вызвать редактор системных файлов. Самый верхний и будет Autoexec.bat. Добавим следующее и перезагрузим машину:
@echo off @echo Attention @echo System error. File kernel.dll is fail. Press any key for format C pause
И что же мы видим, ещё до того как загрузится Windows, появится строка, гласящая, что произошла системная ошибка. Итак, неопытный пользователь, увидев такое сообщение, не поймёт откуда оно взялось и будет всерьёз ошеломлён. Нажать какую-нибудь клавишу осмелится не каждый... но, в последствии, когда, несколько раз перезагрузив компьютер... он обнаружит то же сообщение, ему уже ничего не останется сделать, как рискнуть... Да, выставить кого-нибудь чайником - занятие чрезмерно приятное... И наша очередная задача - сделать всё это из Delphi
Объявляем файловую переменную класса TextFile и массив строк в публичных объявлениях (после ключевого слова Public):
public { Public declarations } f: TextFile; t: array [1..4] of string;
По нажатию простого "батона" пишем код:
procedure TForm1.Button1Click(Sender: TObject); var i: integer; begin assignfile(f, 'c:autoexec.bat'); Append(f); t[1]:='@echo off'; t[2]:='@echo Attention'; t[3]:='@echo System error. File kernel.dll is fail. Press any key for format C'; t[4]:='pause'; for i := 1 to 4 do writeln(f,t[i]); closefile(f); end;