Доброго времени суток. Вопрос следующий: каким образом в своей проге я могу организовать сабж? Т.е. прога впервые запустившись на одном компе получает какие-то данные(идентификатор) этого компа, запоминает его и при повторном запуске снова получает эти данные и сравнивает с сохраненными. Далее действия зависят от результа сравнения. Прав ли я? Какие еще есть способы? Очень надеюсь на помощь в этом вопросе. Благодарю за внимание.
Придумай уникальные данные, которые будет получать тулза. HDD ID, Частота процессора, Кол-во метров ОЗУ, Windows Product ID. Все это хешируй каким-нибудь алгоритмом (хотя бы самодельным, простейшим) и сохраняй. Каждый раз при запуске получай заново этот хеш и сравнивай с записаным. Это абстрактно, в общем случае. Можно сделать ключ расшифровки кода этим хешем. Тогда на других машинах оно просто не запустится.
спасибо за совет. а где мне хранить идентификатор? может в какое-то "ненужное" поле РЕ-заголовка писать? какие места для хранения еще можно использовать, чтоб не особо усложнять себе задачу?
GeNeZiS наилучший вариант - в коде. хораете какую нужную функу требуемым значением, а потом еще раз. перед ее вызовом устанавливаете ексцепцию. еси выбьет - пишете, мол не хватает лицензий.
2 qqwe А вот об этом подробнее пожалуйста. Допустим прожка только что скомпилена и отдана в чужие руки. эти руки запустили у себя на машине прогу - работает каждый раз. далее эти руки передали эту же прогу третьему лицу - а у него не запускается. т.е. полученный однажды ID компа с собой наверно нужно таскать. как легче всего это сделать? может быть кто-то сталкивался с подобной бедой. надеюсь на помощь и жду предложений.
GeNeZiS В ключевом файле хранить, или в реестре. Юзер запускает прогу, она не находит ключ и предлагает зарегистрировать себя, выдает юзеру HWID. Юзер посылает HWID тебе (или вводит на сайте, если автоматизировать), ты генерируешь ключ, в ключе зашифрованы рег. данные и например некоторое 64 разрядное число. Программа, запустившись и найдя ключ, берет из него это число, ксорит с HWID, и использует результат как ключ TEA для расшифровки части кода себя. 2 вариант. Юзер для установки программы запускает исталлятор, который генерить HWID и требует регистрационный номер. Получив этот номер инсталлятор зашивает его в исполняемый файл программы. Программа, запустившись берет этот номер и далее как в первом варианте.
GeNeZiS об чем подробнее? вы хотели сперва привязать к машине. теперь таскать хотите. вы на одном чемто остановитесь.
_basmp_ Опять поспешные выводы делаешь. Прочитай ещё раз внимательно. K10 мы как будто мысли с одного канала принимаем. Я реально фигею насколько ты везде правильно советы даёшь. Респект тебе капитальный. С реестром не согласен. Так как при переносе проги на другой комп, реестр не переносится.
IceBars Ну тут я имел ввиду, что пользователю выдается окошко "Введите серийный номер". Он его вводит (в текстовом виде), и этот серийник (соответствующий его железу) уже где-то (в реестре) запоминается. При переносе проги, юзер опять ее регистрирует этим же способом. Ну и полученный от автора серийник у него где-то записан (как и с другими программами).