Форум: "Потрепаться";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];
ВнизКак правильно организовать Trial версию программы? Найти похожие ветки
← →
yuger (2001-12-17 16:39) [0]Думаю выше сказанный вопрос интересует многих, кто хочет заняться шареваре.
По моему видению проблемы можно сделать так:
1) после инсталляции программа кудато пишет инф. о дате установки (при последующих запусках она эту запись видит и не переписывает).
2) при каждом запуске программа проверяэт зарегистрирована ли она. Ищет введенный сер. код в опр. месте.
3) если не находит или он неверный, то проверяет сколько дней прошло с момента первого запуска.
4) если больше, скажем, 30 дней, то отказывается работать или предлагает зарег.
Вопрос:
Куда нужно спрятать инф. о первом запуске так, чтобы трудно было обнаружить.
Варианты:
---1---
1) В Windows\system и иже сними (создает како-то файл с "стандартным названием" Com32Srv.dll. :-)
2) В том же месте пишет в какую-то ini.
Проблемы:
Если прогу запустил пользователь (не админ и не опытный пользователь) в Win2000, то прога не сумеет это сделать.
ТО же касается и Program Files. (у пользователя нету прав).
---2---
Прятать эту инф. в реестре.
Но опять-таки для пользователя доступен только Current_User.
Там не особо найдеш место длля маскировки.
Кроме того при входе в систему под другим пользователем программа
"будет думать", что запущена в первый раз.
Писать в корень как-то некрасиво да и особо негде.
---3---
Писать в саму себя тоже не подходит.
Пользователь сотрет прогу и заинсталлит заново.
Получит еще один испытательный срок.
Важно:
Программа на испытательный срок должна быть ПОЛНОФУНКЦИОНАЛЬНА.
Так что посоветуете в таком случае делать начинаещему шароварщику?
← →
33 (2001-12-17 17:13) [1]>Так что посоветуете в таком случае делать начинаещему шароварщику?
Сначала написать стоящую программу.
По поводу даты:
Из приведенного алгоритма вытекает, что ничего не мешает пользователю менять системную дату на дату установки программы и работать сколько
влезет.
-----------------------------------
В 5 Delphi было сделанно так: в каталоге программы создавался
шифрованный файл с датой и в реестре в разделе программ
под именем Rainbow так же лежали два шифрованных ключа, связанных
с файлом. При каждом запуске программа переписывала файл и ключи.
И если шла нестыковка ключей с файлами, то сразу "Умирала".
Кроме этого прога отслеживала смену системной даты, в реестре
имеется такой ключ.
И все равно это легко обходилось.
← →
yuger (2001-12-18 10:14) [2]Спасибо 33.
Речь идет о уже написанной программе.
Насколько она стоящяя - не мне судить. :)
Со сменой даты я собираюсь бороться таким образом:
программа с каждым запуском будет запоминать дату запуска где-то.
также, если она обнаружит, что системная дата меньше запомненой,
то отказ работать. Понятно, что можно и это обходить (перед запуском
менять на одну и ту же дату),но специфика использования программы такова,
что это придется делать слишком часто и на долго.
Да и, если честно говорить, я не собираюсь делать очень сильную защиту.
Насчет делфи 5.
Все это понятно, но проблема остается открытой.
Пользователь не имеет права на запись в Program files.
Я специально поставил триал версию Macrimedia dreamwawer-а.
Я удалал его, чистил реестр, ставил монитор на изменения на диске и в реестре...
Ничего не помогло. Как он, зараза, это делает? Интересно!
← →
gun19456 (2001-12-18 11:09) [3]Ну чего Вы привязались к дате!
Любой хакер первое, что делает ищет где прога считывает дату.
Все проще. Меняйте в ini что-то, но не сразу, а после скажем 10 запуска.
Проверяют то в начале и до 10 считать не умеют
← →
Дремучий (2001-12-18 22:19) [4]можно ограничивать количество запусков програмы
например 3 раза в день на тридцать дней
или просто 90 раз в месяц.
нет привязки к дате, есть привязка к счетчику,
что на мой взгляд проще.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c