[ Программа-обманщик ]
Сегодня пойдет разговор о программах которые имитируют
защиту от вирусов, таких программ в интернете, как грази
осенью, большинство из них сами зарожают систему вирусом и
просят зарегистрировать паленный анти-вирус, что бы удалить
вирус, эх говорить можно много, но многие делают на этом не
плохие деньги, потому что все любят халяву, а выложить в
нете бесплатную программу - антивирус и сказать, что она
удалеет большинство вирусов, как ее сразу стянут себе на
компьютер, но такие программы, как привило зарожают системы
и используется как троян, те кто смотрел фильм "Cеть"
поймут меня. И так сегодня мы напишем простенькую программу
которая будет имитировать анти-вирус. Можно считать эту
статью как продолжение программирования на C++ Builder.
Запускаем среду разработки, настраиваем главное окно (как
это делается читайте в Кодинг на C++№1), разместим на форме
две "Button", одну "Label", потом "ProgressBar" как показано
на рисунке "1.jpg"
Для работы нам понадобится еще одна форма, для этого нажмем
"File -> New -> Form" появится еще одна форма, перед ее
настройкой нажмем на "Project -> Options" и увидем что в проекте
у нас две формы, перенесем вторую форму в "Available forms"
как показано на рисунке "2.jpg", теперь можем нанести на нее
космитические изменения, но пока подключем нашу вторую форму к
первой форме, для этого нажмем на первой форме два раза и в
редакторе кода допишем:
[Фрагмент кода]
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h" // подключаем нашу вторую форму
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1
Теперь нанесем на вторую форму изменения такие как показаны на
рисунке "3.jpg", на второй форме просто размещены компоненты
"Label" и две "Button", но давайте вернемся к нашей первой форме,
быстро напишем код для обработчиков кнопок "Сканировать" а
для кнопки "Выход" напишите обычный код:
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Close();
}
Теперь для кнопки "Сканировать" мы напишем код, который так же
будет работать с компонентом ProgressBar, идея такая, после того
как индификатор "ProgressBar" дойдет до конца, выдать вторую
форму с сообщением о том что найден вирус, и так пишем
следующий код:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int i;
ProgressBar1->Visible = true; //Показываем наш индификатор на форме
ProgressBar1->Min = 0; //Указываем Min нулевое значение
ProgressBar1->Max = 30000; //Указываем Max значение 30000
for ( i = ProgressBar1->Min; i <= ProgressBar1->Max; i++) {
ProgressBar1->Position = i;
}
Application->CreateForm(__classid(TForm2), &Form2);
Form2->ShowModal();
Form2->Free();
}
Пояснение к коду, тут мы Min указываем значение "0" а Max "30000"
думаю понятно для чего мы так сделали(Полный разбор компонента
Progressbar в статье Кодинг на C++ №4) дальше мы в операторе for
говорим программе пока Min не станет больше и равной Max процесс не
останавливать, переменая "i" тут у нас играет главую роль и в
теле цикла она присвоена к ProgressBar1->Position = i; Для чего?,
можите скомпилировать приложение и нажать на "Сканировать".
Понятно?, ну а после этого выводит нашу вторую форму, теперь мы
будет работать с ней.
Для второй формы, кнопке "Удалить" напишем такой код:
void __fastcall TForm2::Button1Click(TObject *Sender)
{
MessageDlg("Удаление не возможно",mtError, TMsgDlgButtons() << mbOK, 0);
}
Тут мы просто выводим сообщение о том что невозможно удалить
найденный вирус, для чего это я думаю понятно бабки, бабки и еще
раз бабки, а второй кнопке мы присвоили Close(); как обычно. И так
перед вами обычная программа имитатор, впрочем если замарочиться
дизайном, добавить меню к программе то можно выдать свой имитатор за
антивирусную программу или проще организовать в программе код, когда в
процессе сканирование было произведено зарожение трояном или чем ты
сам вибирешь, о программах-обманщиках ты можешь почитать в журнале
"ComputerBild №06/2008", если реально заморочиться можно и поиметь
с этого хорошие деньги, только щас это будет трудно таких программ в
сети много ну вот и все, веселого кодинга.
Фотки и исходники программы ищи в includes/fraud/*
(c) Outlaw