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

Вот в чем проблема. У нас есть некоторое программное обеспечение, есть бесплатная версия и платная версия.

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

На данный момент мы проводим несколько кампаний по привлечению посетителей на наш сайт. Мы знаем, что посетитель пришел, скажем, из нашей кампании на Reddit, загрузил наше программное обеспечение, а затем практически исчез. Если они используют программное обеспечение и хотят заплатить, они щелкают ссылку в программном обеспечении, и покупка становится анонимной.

Что мы хотели бы сделать, так это то, что когда они загружают программное обеспечение, оно каким-то образом генерирует текстовый файл в их каталоге установки с источником их загрузки в нем. Этот файл будет содержать такие данные, как «reddit1», чтобы указать, что они произошли из кампании Reddit # 1. Затем каждая ссылка в программном обеспечении отправляет эту переменную в запросе GET, чтобы мы знали, откуда на самом деле пришла продажа.

Чего мы не можем понять, как лучше всего сделать, когда у нас есть переменная с ее источником на веб-сайте, как передать ее в загрузку EXE, чтобы во время установки она генерировала файл данных? Мы не хотим иметь несколько загрузок для каждой кампании, которую мы запускаем.


person Tom Gullen    schedule 19.09.2011    source источник


Ответы (4)


Нам удалось решить эту проблему, передав идентификатор в имя файла, например:

setup_221.exe

Где 221 = реферал. Программа установки может взять реферальный идентификатор и сохранить его в каталоге, а затем передать его веб-сайту, который преобразует его в реальную кампанию.

person Tom Gullen    schedule 22.09.2011
comment
Можете ли вы дать краткий обзор того, как вы передали уникальный идентификатор в .exe? У нас есть проект, который должен сделать то же самое, и этот процесс будет работать для нас, но мы не уверены в методах динамического маскирования/изменения файла .exe. - person harvmob; 21.02.2017

Один из способов — попросить клиента заполнить некоторые данные перед загрузкой, чтобы вы могли однозначно идентифицировать его и дать ему серийный номер.

После завершения загрузки при первом запуске программное обеспечение запросит у пользователя серийный номер, а затем сделает запрос на сервер и получит необходимые сведения, связанные с этим пользователем, такие как кампания и т. д.

Когда пользователь хочет обновить свою лицензию, программное обеспечение запросит у сервера ссылку на основе этого пользователя.

person Dan Bizdadea    schedule 19.09.2011
comment
Хорошая идея, но поскольку наша загрузка размещена на нескольких сайтах загрузки, это не вариант. Мы хотим, чтобы люди могли просто скачать его и работать, без генерации серийных номеров или чего-то в этом роде. - person Tom Gullen; 19.09.2011

(При условии, что вы используете .NET, что, судя по другим вашим вопросам, так и есть...)

Возможно, у вас нет нескольких версий вашего продукта, но все же несколько EXE-файлов для каждой кампании. Вы можете поддерживать и, возможно, даже автоматизировать эти «разовые» сборки во время загрузки, объединив облегченную сборку «реферера» с окончательным EXE, используя ILMerge. Ваша сборка реферера должна попытаться загрузиться во время выполнения основным EXE-файлом продукта, и если он ее найдет, то он может изменить свой параметр реферера.

person Mike Atlas    schedule 19.09.2011

Есть ли возможность генерировать exe-файл при запуске загрузки? Если это так, вы можете добавить текстовый файл.

person olemartin    schedule 19.09.2011
comment
Проблема в том, что загрузка идет в формате EXE, мы можем сгенерировать текстовый файл, но куда он девается? Мы не хотим, чтобы люди загружали несколько файлов, только один установочный файл exe. - person Tom Gullen; 19.09.2011