Бунт CD-ROM’а

altКаждый, наверное, и много раз видел проги, которые то открывают сидиром, то закрывают. Дак вот теперь и у тебя появилась возможность заиметь такую, а круче всего — написать самому. Представьте себе: ламерюга с умным видом вьювит какой-нибудь док, а тут его сидюк начинает вести себя как взбесившийся: то откроется, то закроется, то откроется, то закроется, то откроется, то закроется, то откроется, то закроется… и так, например, каждый час… (или минуту…или секунду…)

Немного пошалим

Итак господа, начнём! Все дружно открываем Delphi. Он (или она) сам (сама) создаёт нам новенький проект. Но до начала кода надо немного изменить то, что написал сам Дельфи. Находи строку uses и дописывай там ещё один модуль:

uses
… ,MMSystem;
Теперь, в публичных объявлениях объявим переменную логического типа IsOpen для обозначения времени когда открыт CD-ROM:

public
{ Public declarations }
IsOpen: boolean;
Теперь кидай на форму нашего проекта всего один компонент Timer. Ставь его свойство Interval как твоей извращенской душеньке хочется. Если не понятно, то по истечению этого времени CD-ROM и будет беситься. По умолчанию это свойство равно 1000, что означает 1 секунду!!!

Теперь, по созданию окна нашей формы надо её немного спрятать, и присвоить переменной IsOpen значение false. Для этого создай обработчик сабытия OnCreate и измени его, как показано ниже:

procedure TForm1.FormCreate(Sender: TObject);
begin
IsOpen:=false;
Form1.Left:=-600;//Прячем форму за пределы окна
end;
Теперь прячем прогу из приложений, создай обработчик события формы OnShow и напиши там:

ShowWindow(application.Handle,SW_HIDE);//Прячем окно

Эта функция показывает наше окно с определёнными параметрами, а мы указываем их такими, чтобы окно не светилось.

Теперь самое сладенькое, сам прикол. Щас мы напишем код, который будет открывать и закрывать CD-ROM. Создовай обработчик события OnTomer и меняй его до следующего вида:

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if IsOpen = false then
begin
mciSendString(‘Set cdaudio door open wait’, nil, 0, handle);
IsOpen:=true;
end
else
begin
mciSendString(‘Set cdaudio door closed wait’, nil, 0, handle);
IsOpen:=false;
end;
end;
The End

Вот очередной прикол готов и как ни странно работает. Мы получили удовольствие, а ламеры ещё одно расстройство!!!

Но помни!!! Эту прогу не видно только в приложениях, а в процессах она светитя, так что подумай какое ей дать имя, чтобы ламер не заподозрил ни чего подозрительного. Да, чуть не забыл, делай своё окно настолько маленьким, на сколько позволяет Дельфи, ведь мы не прячем окно, а просто сдвигаем его за пределы рабочего стола.

Понравилась статья? Поделиться с друзьями: