Прединсталляторы и психологияИсточник: delphisources Val
Процесс пошагового описания процесса разработки программы-прединсталлятора на Delphi
1. Прединсталляторы Это программы, исполняемые до инсталляции программного обеспечения. Архивы бесплатного программного обеспечения идут на различные ухищрения, чтобы получить компенсацию за расходы на поддержание вебсервера и сервиса. Т.к. программы распространяются бесплатно, то зарабатывать средства приходится за счет размещения рекламы спонсоров. Прединсталляторы - тот класс программ, которые могут существенно облегчить финансовые проблемы владельцев freeware архивов. Обычно, скачанное пользователем бесплатное или демонстрационное программное обеспечение - файл, имеет имя, отличное от SETUP, INSTALL, RUN или START. Чаще всего сейчас в имени файла используется сокращенное название программы (например, http://pipa.send-sms.ru/get.php/pipa.exe). Это позволяет вместе с архивом программы представить пользователю дополнительный EXE файл с одним из таких названий (setup.exe например). В подавляющем количестве случаев процесс инсталляции будет начат пользователем с запуска именно этого (setup.exe) файла. При этом в файл (setup.exe) могут быть включены следующие функции: 2. На чем программировать
Видно, что наибольший процент посетителей используют ОС Windows 2000 или Windows XP. Поэтому будем ориентироваться на структуру реестра именно этих OC.
В данном документе описан процесс разработки отдельных процедур программы для Интернет-рекламы.
3. Структура программы
Программа прединсталлятор должна быть компактной, быстро исполняться, отрабатывать рекламный сервис, запускать инсталляцию основной программы и завершать свою работу.
В нашем примере программа-прединсталлятор будет состоять из прозрачной формы Form1 (Border Style = 0, Appearance = 0).
4. Подключение рекламного сервиса
Рекламный сервис может выполняться разными способами:
- обязательным однократным или многократным посещением web страницы разработчика или спонсора; Внимание! В любом случае пользователь должен быть предупрежден об особенностях сервиса, включенного в программное обеспечение. Производить или не производить инсталляцию - выбор пользователя.
Рассмотрим вариант, когда программа-прединсталлятор устанавливает в качестве стартовой страницы для Internet Explorer страницу спонсора.
Для этого необходимо выполнить запись в реестр Windows. Это может быть проделано непосредственно из программы на Delphi или с помощью Java-скрипта. Достаточно создать на диске текстовый файл Java-скрипта и записать в него код, а затем запустить из Delphi программы.
Листинг для записи в текстовый файл из программы на Delphi - в файле, в конце статьи.
Текст Java-скрипта (всего 3 строчки):
var WSHShell = WScript.CreateObject("WScript.Shell"); Напишем Delphi-код для записи JS скрипта в файл set-page.js.
Код:
procedure TForm1.FormActivate(Sender: TObject); Здесь " + chr(34) + " - код для записи кавычек в файл Java-скрипта. Аналогично - для скобок и точки с запятой - '+chr(34)+chr(41)+chr(59)". ASCII-коды можно посмотреть на А для работы с ShellExecute необходимо добавить объявление (выделено красным): При выполнении такой программы-инсталлятора в качестве стартовой страницы броузера Internet Explorer в Windows 2000 и Windows XP будет установлен адрес вебсайта www.privet.com.
Полный проект смотрите в файле в конце статьи.
Здесь приведен самый простой вариант программы. В него надо добавить всего одну строку кода - запуск инсталляции основной программы. Это можно сделать просто включив в программу еще одну строку - например ShellExecute(Handle, 'open', ' pipa.exe', nil, nil, SW_HIDE);
Кроме того, следует удалить с диска файл с Java-скриптом, как уже ненужный после начала инсталляции
ShellExecute(Handle, 'open', ' kill c:\set-page.js', nil, nil, SW_HIDE);
Это самый простой образец программы-инсталлятора. Эффективность работы его можно значительно повысить, если произвести некоторые доработки - например, файлы конфигурации. Тогда программа-прединсталлятор станет более универсальной, подходящей для широкого использования. Можно разработать программу для создания, редактирования и кодирования файлов конфигурации прединсталлятора. Т.е. разработать новый коммерческий продукт.
Программа-инсталлятор имеет удивительную эффективность для создания трафика - с самых "банальных" web-сайтов с посещаемостью 300-600 человек в день скачивается 100-150 экземпляров программ минимум. Можете представить сколько посещений вебсайта спонсора может обеспечить прединсталлятор.
Эффективность программы-прединсталлятора можно повысить производя так же и запись в Favorites броузера. 5. Запись в Favorites
Для этого необходимо работать с реестром Windows. Команды для работы с реестром.
function ReadString(const Name: String): String;
Возвращает строку значения параметра Name текущего ключа. При ошибке чтения генерируется исключение и возвращенное значение является ошибочным.
Пример: Продемонстрируем функцию для чтения значения ключа реестра, в котором выше установили адрес стартовой страницы Internet Explorer (на форму Form1 нужно добавить кнопку Button1):
procedure TForm1.Button1Click(Sender: TObject); Для работы с реестром необходимо добавить объявление (выделено красным): Полный Delphi-проект с этого этапа разработки смотрите в файле в конце статьи.
Рассмотрим Delphi код для создания записи в Favorites ("Избранное").
Напишем более простой код. Добавим его в процедуру TForm1.Button1Click:
procedure TForm1.Button1Click(Sender: TObject); Form1.Caption:= ee;
//Создать новую запись в Favorites AssignFile(f, ee); Полный Delphi проект программы смотрите в файле в конце статьи.
В принципе, здесь создан еще один коммерчески ориентированный продукт. Представьте себе веб-сайт-каталог тематических ссылок. Например список ссылок на mp3 музыкальные сайты. Используя приведенный выше VB код, можно создать такой каталог тематических ссылок на компьютере, в Favorites. Создается вложенная папка, например, "MP3 ссылки". И в неё помещаются записи с ссылками на тщательно проверенные каталоги MP3 музыки. Программа для создания таких каталогов - вполне коммерческий продукт. Новый продукт. Эта ниша на рынке еще не занята. Кроме того, программа может быть немного усовершенствована и получать обновления списка вебсайтов с вебстраницы разработчика. Технически, это очень просто.
6. Wallpapers - рекламные обои
В предыдущем руководстве программиста показано, что обои (оформление рабочего стола) тоже могут использоваться в рекламных технологиях.
procedure TForm1.Button1Click(Sender: TObject); // Bild laden // Geratekontex vom Desktop ermitteln // Position des Bildes // Bild zeichnen // Geratekontex freigeben // Objekte freigeben
7. Об эффективности
Эффективность использования программ-прединсталляторов чрезвычайно высока. Свыше 70% программ инсталлируются сразу после скачивания и без всякого анализа состава программного пакета. В лучшем случае читается файл "readme.txt".
Рекламную эффективность программ-прединсталлятров можно значительно увеличить используя специальный инсталлируемый на компьютер модуль для загрузки рекламы. В таком случае программа превращается в разновидность Adware и может вызвать у пользователей негативную реакцию. Тем не менее, рынок такого программного обеспечения развит и спонсорам предлагаются программные модули для загрузки рекламы по цене от 300$.
Обращаю Ваше внимание, что потребители (пользователи) программного обеспечения должны быть предупреждены о том, что условием использования программных продуктов будет просмотр рекламной информации спонсора.
Руководство написано для широкого круга лиц - программистов, администраторов, пользователей бесплатного ПО. |