Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Попытался сделать привязку проги к ПК. Благодаря функциям DEMBELя - mac и pid, md5.
Если несложно, и если есть у кого-то время, то по тестируйте пожалуйста. Может быть укажите на ошибки или возможность ускорения/упрощения процесса. За основу взята идея Сергея, которая была представлены выше. Только с незначительными доработками. Т.к. выслать готовый проект электронной почтой будет нельзя (весит очень много), нет возможности вшивать в каждую прогу отдельный код. Пришлось его генерить внутри.
В приложении: 1) Продукт для активации - то что требует серийника. ( не скомпиль) 2) Прога для активации ключа (не скомпиль)
Тестил на 3-х машинах. 2 бука сони вайо - одинаковые. На одном виста, на другом 7-ка. И на 1 стационарном XP SP2. Вроде работает, только на буках загрузка и проверка чуть притормаживает. В XP пролетает очень быстро.
Добавлено (31 Октябрь 2010, 14:27) ---------------------------------------------
кто будет тестировать сразу исправьте пути к функциям, и проверьте есть ли они у вас вообще
Добавлено (31 Октябрь 2010, 14:32) ---------------------------------------------
все работает. проверь еще раз как хранятся в системе данные об активации и как прога при старте проверяет свою активацию, но подумай еще как можно улучшить процесс. Это самое тонкое и сложное место, работать должно 200%.
Добавлено (31 Октябрь 2010, 14:34) --------------------------------------------- а по русскому в школе двойка была чтоли
Да не двойка конечно ... просто когда чет делаю, клавиатура опережает мозг ... иногда такие перлы получаются
проверь еще раз как хранятся в системе данные об активации и как прога при старте проверяет свою активацию, но подумай еще как можно улучшить процесс.
Я так думаю собирать инфу о железках она должна каждый раз, при запуске ... иначе смысл? )) А серийник думал запихнуть не в текстовик, а в реестр ... правда еще даже не заморачивался. Надо почитать ...
Это самое тонкое и сложное место, работать должно 200%. Есть какие-то критические замечания? Или это в общем ...
п.с. DEMBEL, спасибо тебе большое за анализ работы и труд, который помогает людям.
DEMBEL, ты же вроде сам говорил, что так можно посчитать сумму железа. А так код активации на выходе изменен. А генерится серийник уже в MD5.
Почитал про реестр ... "чет очкую я" (с)
Quote
ВНИМАНИЕ: Будьте осторожны, изменяя значения ключей реестра. Внеся некорректные изменения, можно запросто вывести из строя не только свой компьютер, но и что значительно хуже - компьютер пользователя.
Добавлено (31 Октябрь 2010, 15:13) ---------------------------------------------
Ёпрст ... сиськи ... Извиняюсь, если кого обидел. Делал прикол для жены. Забыл убрать.
Jivchik, "Скорое утро" работает! Т.е. я прошел все шаги и в итоге открылся (и проигрался) ролик с невербальным посылом "взбодрись".
WinXP SP3
Только самой процедуры покупки не было (видимо подразумевается отдельно).
Добавлено (15 Ноябрь 2010, 00:58) --------------------------------------------- Возможно (это просто идея), что активационный код нужно высылать уже после того, как покупатель пройдет по ссылке в автоматически отправленном ему письме (чтобы тем самым подтвердить правильность эл.адреса). Такое письмо может быть ему выслано сразу после того шага, на котором он ввел свой адрес.
ну если вводить правильные данные то ролик показывается. я только не понел имеет ли значение совпадение имени/отчества/емейла вводимого на сайте и в программе. по моему тут избыточность данных. как заметил Вадим, получать код активации заранее на сайте - какой в этом смысл? . к чему привязан код, имени и почте? а должен к ид компа. я не знаю механизм активации, но лучше, повторюсь, делать так - скачали прогу, запускаем - она говорит мол незарегистрировано, вводим адрес своей почты, прога выдает идентификатор машины который отправляется на сайт (с почтой и ид), идем на сайт за ключом. зашли на сайт, ввели ключ, перевели деньги (или вместе с переводом отправили ключ автору), сайт сгенерировал (или автор вручную) код активации. забил в базу полученный ключ, вытащил из него адрес почты чтоб потом отправить туда рег. данные. сгенерили на сайте или вручную новый ключ и отправили на мыло для безопасности (или показали на всеобщее обозрение). ключ привязан к почте и ид. ввели ключ в прогу, она сравнила ид из ключа и введенный адрес почты в проге, если все совпало то активируемся.
генерировать код на сайте - бред, на чем он завязан? я нагенерировал их кучу рефрешем страницы, и прога все схавала. в чем его смысл? обозначать факт покупки и выдавать ссылку? но, см. далее...
ссылка на скачивание должна быть доступна свободно а не после кода, иначе придется генерировать уникальные ссылки для каждого скачивания на основе ip, не раскрывая "жесткую" ссылку, иначе один раз узнав ее, продукт можно качать без кода. не надо заморачиваться с этим. мы же описали вам простой способ регистрации продукта, а вы как-то через ж... все сделали. и еще продумайте механизм оплаты, может лучше не заморачиваться а воспользоваться готовыми решениями (digitalriver, paypal). Неплохой вариант отсылать ключ вместе с переводом вебмани.
к выше изложенному добавить нечего, единственное, что хотелось бы сказать: Не надо все усложнять в активацией, лучше минимум действий и желательно активировать не только через саму прогу (вдруг у чела нет инета, он живет в деревне?!) я активировал прогу два раза на один и тот же емайл через код выданный на сайте(рефрешем), ничего не напоминает?! Тут, Дембель, безусловно, прав-генерировать код на сайте, это "дырка" в регистрации Да и не забудь шифровать данные в конфиг-файле.
Добавлено (15 Ноябрь 2010, 07:06) --------------------------------------------- кстати, если в файле конфиге вторую строчку заменить например на 0, то после сообщении о телефоне будет повторная регистрация, если нажать ктивировать, то повторного ввода кода не требует, а сразу переходит к ролику. Это наталкивает на мысль, что где то еще хранятся данные. Если в реестре, то пжл. скажи ветку чтоб я зачистил..... если закрыть прогу, а в файле конфига заменить обе строчки на любое фуфло, то можно узнать, что приходит с пост запросом
Да. Вы все сто раз правы. Только ведь я не могу Вам каждому диск выслать, поэтому все упростил как мог. Главное чтобы активация приложения проходила. И разрешение на активацию.
А суть такова.
1. Зашли на сайт, зарегистрировались. Логин = email - и он уникальный. Т.е. будет привязка по email-у. Сейчас ее нет. Как и сверки на уникальность Имени и Фам. 2. Купили (читай заказали). Два способа оплаты (с наложкой или предоплата). Если предоплата, то в БД - я ставлю ручками "Активацию разрешаю", если наложка, то вкладываю в диск "Пароль на разрешение активации". Как Вы понимаете в примере я это сделать не мог. Человек, оплатил заказ на почте и чтобы не ждать пока деньги придут (а идти они могут до 2-3-х недель - опыт большой уже), человек воткнет диск и введет уникальный код. Сам код закэшируется и сравнится с тем что в БД на сервере. Если совпадет, то будет активация приложения. Как и была раньше по "mak+pid+email". Только ее сейчас уже не видно. Передача этих данных и сверка "за кадром". Но работает. 18 разных машин отработали нормально. Вы это тоже подтвердили - раз ролик играет. 3. Ссылки на скачивание не будет на сайте, как и генерации ключа разрешающего активацию. Конечно - это дырень, я не хотел ее оставлять. Это что бы у вас была возможность потестить. Сам продукт у меня уже весит под 600 мегов ... но еще не до конца сделал. 4. Конфиг - конечно. Это тоже самое. Будут заносится данные в реестр (выше Дембель научил как) в хэше (за исключением email). Что касается "удалить данные из конфига" ... то логично (по моему мнению), что начинается регистрация, ведь если нет регистрационных данных и приложение НЕ активно, то надо его по идее активировать ... ведь так? Или что-то другое тут? Не совсем уловил.
А так, в целом главное для меня была активация. Кстати если после активации выйти и зайти в прогу, ролик тоже играется?
Сообщение отредактировано Jivchik - Пн, 15 Ноября 2010, 10:26
Риск есть всегда. Иногда в магаз притащат что-нить. Думаешь ... Ну все капец. Деньги повесили только. А он раз-раз ... и в ТОП-10 самых продаваемых товаров. А иногда везем что-нить с помпой, кучу рекламы накупим, вбухаемся. Кажется просто супер товар. А он раз и встрял, да так ... что чуть не даром раздавай, чтобы вернуть оборотку. Не угадаешь. Так и тут. Мне кажется он интересным. А уже потом народ сам решит. Как бы все не закончилось. Я для себя открыл очень много. Рад знакомству с Вами. Новым возможностям. С удовольствием делаю продукт прежде всего для себя. А если он еще кому-то подойдет и его купят - так это будет вообще супер. Как-то так. Разглашать пока не буду.
600 мегов это столько сама прога весит? Там видео походу, просто я не могу представить, что можно запихать в проект на эту сумму кроме видео Ну ладно, развивай проект дальше, время покажет... Только одно не могу понять, если юзер будет покупать диск(в котором уже есть этот самый код регистрации), то зачем еще и регистрироватся на сайте? А если он не хочет, программа нужна, и он готов заплатить, а вот регится ему нафиг ненадо?
Добавлено (15 Ноябрь 2010, 16:18) ---------------------------------------------
Активация похожа на активацию игры(Стреам игры) Меня, если честно бесит, я и так купил лицуху и тут еще эта регистрация! Но с этим понятно, чтоб поиграть, можно и через нехочу зарегится. Но это же игра и причем неплохая (например линейка Call Of Duty). А вот насчет проги, фиг знает, скорей всего я задвину эту прогу, но это чисто мое мнение
Сергей, все дело в привязке ... а привязка как не крути: а) Что бы, что отправить почтой (товарное вложение) нужны данные юзвера. Иначе полно всяких любителей кнопки понажимать. Плюс проверить. б) Привязка для активации на 1-й машине. (Хоть и мизерная, но защита от дурака. А если кто-то сломает, ну значит продукт хороший и я получу рекламу, т.к. сам продукт активно обменивается с данными с сайта, а занчит будут продаваться другие наши товары и услуги). в) Вот и связь - лицуха - одна машина - регистрация - почта ... по другому будет много холостой работы. Знаю это, т.к. в интернет коммерции уже 6 лет. г) Что касается запарки с регистрацией, мне когда потребовался 1С лицензионный я и зарегился и съездил в офис и поставил все. Тоже самое и с Виндой, с Офисом ... просто если вещь реально нужная, то такие мелочи как регистрация НЕ должны стать реальной преградой. В конце концов пользователь должен понимать, что чем больше купят этот продукт официально, тем большее получит развитие продукт в будущем. Чистая коммерция. А зарегистрированные пользователи еще и поддержку бесплатную получат в рамках сайта. Так что как-то так.
Добавлено (15 Ноябрь 2010, 16:43) ---------------------------------------------
Quote (Jivchik)
600 мегов это столько сама прога весит? Там видео походу, просто я не могу представить, что можно запихать в проект на эту сумму кроме видео
Видео ролики, фото хорошего качества, база данных и пр.пр.
На днях наткнулся над проблемой идентификации железа - в целях корректного контроля над учетными записями в одном проекте.
Суть в том чтобы собрать инфо о железе пользователя - так чтобы можно было его отличить от других ПК.
Вот что я смог собрать в свою прогу:
Code
Call "mac_pid" StrIns "[Pid]" "" "1" "[TextEntry31]" Call "hw_gfx" SetVar "[Out]" "" GetArrayInfo "[gfx_Name]" "" "" "[n]" loop "1" "[n]" "[i]" SetVar "[Out]" "[Out]Имя: [gfx_Name[i]] Память: [gfx_Ram[i]] Описание: [gfx_Desc[i]] Дата драйвера: [gfx_Date[i]] Версия драйвера: [gfx_Ver[i]] Видеопроцессор: [gfx_Proc[i]] -------- " endloop Call "GetNetVars" "[TextEntry7]" "[TextEntry8]" Call "GetOSInfo" "[TextEntry10]" FileWrite "[TempDir]1.txt" "1" "[TextEntry1]" FileWrite "[TempDir]1.txt" "2" "Имя: [TextEntry4]" FileWrite "[TempDir]1.txt" "3" "Логин: [TextEntry1]" FileWrite "[TempDir]1.txt" "4" "Обратный e-mail: [TextEntry9]" FileWrite "[TempDir]1.txt" "5" "Пароль от уч.записи: [TextEntry5]" FileWrite "[TempDir]1.txt" "6" "__________________" FileWrite "[TempDir]1.txt" "7" "Системная дата: [DateLong]" FileWrite "[TempDir]1.txt" "8" "Системное время: [Time24]" FileWrite "[TempDir]1.txt" "9" "__________________" FileWrite "[TempDir]1.txt" "10" "Версия Windows (4.0 for Windows 95, 5.1 for Windows XP): [WindowsVer]" FileWrite "[TempDir]1.txt" "11" "Информация ОС: [TextEntry10]" FileWrite "[TempDir]1.txt" "12" "IP адрес: [TextEntry7]" FileWrite "[TempDir]1.txt" "13" "MAC адрес: [TextEntry8]" FileWrite "[TempDir]1.txt" "14" "ID процессора: [TextEntry31]" FileWrite "[TempDir]1.txt" "15" "Учетная запись на компьютере (активная): [UserName]" FileWrite "[TempDir]1.txt" "16" "Серийный номер HD: [HDSerialNum]" FileWrite "[TempDir]1.txt" "17" "Буква первого - привода в системе (“error” при его отсутствии): [CDRomDrive]" FileWrite "[TempDir]1.txt" "18" "Запущенно с папки: [CurrentDir]" FileWrite "[TempDir]1.txt" "19" "Содержимое буфера обмена перед отправкой: [Clipboard]" FileWrite "[TempDir]1.txt" "20" "__________________" FileWrite "[TempDir]1.txt" "22" "Информация о видеоадапторе:" FileWrite "[TempDir]1.txt" "24" "[VGAinfo]"
Вопрос:
1) Можно ли узнать еще что либо. 2) И важнее всего - можно ли узнать находится ли ПК, в локальной сети - то есть произошел ли запуск проги в домашнем компьютере или с компьютера интернет-клуба - где, не желательно использование (пользователь так сможет обойти систему - контроля)
нет особой разницы с точки зрения проги между компом в локальной сети и в сети "клуба", а параметры по которым можно было бы сделать вывод - ненадежны.
с целью отличения компов не нужно собирать всю возможную инфу. оставьте шанс на замену оборудования. контроль mac+pid более чем достаточно. Как задавать вопросы
на компе обычно несколько сетевых устройств, если есть физическое, бывает создаются еще и виртуальные. загляните в дисп. устройств в раздел Сеть и все поймете.
Quote (crossius)
например не удобно отображаются
неудобно для чего, обычно требуется лишь сравнение данных, их формат не имеет значения лишь бы он был одинаковый при получении.
хотите выяснить кто прав - наберите в консоли ipconfig /all и посмотрите, какой физический адрес соответствует подключению вашей физической сетевой карте:
Обнаружил что мак отображает только для ppp - адаптора,
а тот - 00:0b:5a:3b:52:4b - возможно ли отобразить средствами NB?
Quote (DEMBEL)
на компе обычно несколько сетевых устройств, если есть физическое, бывает создаются еще и виртуальные. загляните в дисп. устройств в раздел Сеть и все поймете.
Покажите исходник, каким кодом это реализовать?
Сообщение отредактировано crossius - Ср, 02 Мая 2012, 22:34