|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Доброго время суток! Подскажите пожалуйста есть ли возможность сделать какой-то лицензионный код для программы в Visual Basic 6.0 Я вообще не знаю можно ли это сделать и на какой стадии. Может при создании инсталляционного пакета? Подскажите пожалуйста подробно, я чайник в этом полный <_< ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 09:54 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Самый простой способ — воспользоваться инсталлятором, имеющим функцию генерации серийников. Такая фича есть в Setup Factory, кроме того он понимает проекты VB6 и сам из него подтягивает необходимые компоненты. Но он платный. Но есть кряки. Само собой, ничто не помешает переписать программу (вместе с компонентами) на другой компьютер после установки. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 10:43 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Antonariy Само собой, ничто не помешает переписать программу (вместе с компонентами) на другой компьютер после установки. Что вы имеете в виду? Т.е. если я установлю кому-то программу. Он сможет ее потом установить без екзешника на др. комп?? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 10:49 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Для выбора технологии (а потом и инструментов) защиты ПО Вы сначала должны определиться, какими ресурсами и возможностями для этого Вы обладаете, какие именно задачи решаете и какие именно ограничения намерены ввести. А пока Вам можно чёрт те чего насоветовать, и всё это в Ваших условиях по тем или иным причинам окажется неприменимо. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 10:53 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Akina, Я же сразу предупредил что в этом вообще чайник. Скажу просто:- Мне нужно чтобы установив на 1 комп, программу не так уж и просто было перенести на другие! А как это сделать я не знаааааююю!!!! Для этого тут вас и спрашиваю. Сами понимаете что раз я в этом здравствуй дерево, то подойдет самый простой и при этом надежный способ! У меня только VB6 и его стандартный упаковщик и всеее. Если что-то нужно могу без проблем скачать. Только подскажите как и что. Плииииз ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 12:17 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
vdekameron, Вам для начала надо погуглить, ибо тема эта далеко не короткая. Вы можете написать и свою процедуру создания ключа - главное понимать на что Вы его хотите завязать и хотите ли. Если цель тупо без привязки к чему-либо сделать уникальный ключ, то создайте массив символов(латиница в разных регистрах, числа, может иные симпатичные Вам символы) и из этого массива случайным отбором собираете в одну строку символы. Длину строки можно сделать 20-символьной или больше. Чем больше символов - тем меньше шансов получить на двух разных ПК идентичный код. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 12:52 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
The_Prist, Звучит красиво))) Но я это не смогу сделать. Вообще не работал ни с массивами. и никогда не делал этого. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 13:12 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
vdekameronВообще не работал ни с массивами. и никогда не делал этогоНу тогда изучайте, что еще можно сказать. Если Вы даже этого не знаете - нафига вообще какой-то ключ? К чему должен быть этот ключ? К программе из одного MsgBox-а? Вы просили подсказать как и что - мы подсказали. Дерзайте. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 14:40 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
The_Prist, Спасибо за помощь ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 14:46 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
vdekameronМне нужно чтобы установив на 1 комп, программу не так уж и просто было перенести на другие!Ну вот первейший вопрос - Вы лично будете ставить эту программу? Или кто-то другой, в наличии такой защиты не сильно заинтересованный? Надеюсь, Вы понимаете, что защита, поставленная в первом случае, вовсе не обязательно может быть поставлена во втором? по-моему, это должно быть очевидно даже тому, кто с деревом здоровается... И это не единственный вопрос, на который Вы (если бы не паниковали, а подумали) должны были уже, сразу, изначально, без наших пинков, дать ответы. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 15:15 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
vdekameronAntonariyСамо собой, ничто не помешает переписать программу (вместе с компонентами) на другой компьютер после установки. Что вы имеете в виду? Т.е. если я установлю кому-то программу. Он сможет ее потом установить без екзешника на др. комп??Не без экзешника, а без дистрибутива. Да - обладая познаниями о разработке на уровне выше чайника. А вы как чайник на что рассчитывали? Нечайникам уже давно известно, что надежно защитить программу на VB невозможно. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 17:53 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Api функция получения номера жесткого диска, чтобы привязать к компу (примеров масса) и xor тут можно почитать http://maxim.int.ru/stuff/xaxaxakep/?074/112/1.htm ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2014, 18:04 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
AkinavdekameronМне нужно чтобы установив на 1 комп, программу не так уж и просто было перенести на другие!Ну вот первейший вопрос - Вы лично будете ставить эту программу? Или кто-то другой, в наличии такой защиты не сильно заинтересованный? Я лично буду устанавливать ее! Просто как то обидно. Делал делал, вас тут всех замучил. Сделал наконец! Создал дистрибутив. Установил на рабочем компе. Зашел в C:\Program files скопировал установленную папку с программой. Пришел домой. Бац, без проблем себе запустилась. И даже устанавливать не нужно мл. :( ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2014, 00:41 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Antonariy, Я понимаю что допустим для вас не составит труда взломать дистрибутив сделанный в VB6 . Но есть же все-таки какие-то элементарные защиты. Не все же такие продвинутые. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2014, 00:43 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Antonariy, Скажите Setup Factory поможет? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2014, 00:51 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
vdekameron И даже устанавливать не нужно мл. :(Можно вынести некоторые функции в отдельную dll, которую устанавливать в системную папку. Тогда при копировании лишь папки с exe на другой комп, exe будет ругаться на отсутствующую библиотеку. Если обращаться к dll через позднее связывание, то можно вместо системной ошибки, указывающей на то, какой именно библиотеки не хватает, вывести своё сообщение. Если такого уровня защиты достаточно, то достаточно и setup factory. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2014, 11:03 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Я свое ПО защищал так: Написал программу-регистратор рабочего места. 1 - она собирала все, до чего могла дотянуться - версию ОС, процессора, памяти, серийники дисков, и оставляла в реестре спец. метки о пройденной процедуре регистрации. 2 - по результатам сборки иф. регистратор рабочего места составлял хеш, отправляемый на сервер. 3 - на сервере выполнялась сборка программы с прошитым в скрытых ресурсах хешем 4 - готовая программа отправлялась на рабочее место, и при старте собирала инф. о рабочем месте и сверяла со вшитым в нее хешем, и проверяла в реестре спец. метки о прохождении процедуры регистрации. Разумеется, хеш не хранится в исполняемом файле "просто так" как обычная строка, там задействованы методы генерации символьных последовательностей "на лету" (авто-генерация С++ кода исходника) , поэтому без дизассемблера и прохода по всем переходам- не разобраться. В случае обновления железа или ОС нет проблем пройти повторную регистрацию рабочего места и выполнить новую сборку программы. Использовалось не для продажи программ, а для установки ПО внутри организации. Просто, ПО было критически важным и поэтому такие "строгости". Мне этого хватало. Но, как сказали уже ранее, у всех свои задачи и ситуации. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2014, 13:05 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Antonariyvdekameron И даже устанавливать не нужно мл. :(Можно вынести некоторые функции в отдельную dll, которую устанавливать в системную папку. Тогда при копировании лишь папки с exe на другой комп, exe будет ругаться на отсутствующую библиотеку. Если обращаться к dll через позднее связывание, то можно вместо системной ошибки, указывающей на то, какой именно библиотеки не хватает, вывести своё сообщение. Если такого уровня защиты достаточно, то достаточно и setup factory. Такого будет достаточно) Уже скачал setup factory порылся там, посмотрел. Там, как вы говорили нашел возможность генерить серийники. Я сгенерировал 2 для проверки и указал что можно устанавливать программу 2 раза(истечение срока). Собрал дистрибут. Когда устанавливал вышло сообщение о том что можно установить только 2 раза а вот про серийники ни слова. Может их как то цеплять еще нужно. В мастере при создании дистрибута ничего не предлагалось. И если можно расскажите подробно как с dll это проделать...там в стандартных тоже этого нет. Получается если юзер найдет эту dll библиотеку тогда сможет перекинуть на др. комп. А если выводить свое сообщение как вы сказали вместо сис. ошибки, то будет сложнее найти, я правильно понимаю? Заранее спасибо за помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2014, 18:07 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Я давно не пользовался SF, уже не помню, что там и как конкретно, а конкретно серийниками не пользовался вообще, просто отметил эту фичу. У SF есть несколько типов диалогов, которые появляются по ходу установки, возможно ввод серийника это один из диалогов, который нужно добавить. авторИ если можно расскажите подробно как с dll это проделать...там в стандартных тоже этого нет.Это нужно делать не в SF. Создается новый vb-проект типа ActiveX dll, по умолчанию это будет Project1 с Class1. В Class1 из программы переносится какая-нибудь функция: Код: vbnet 1. 2. 3.
Проект компилируется. В основной программе делается следующее: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
В SF Project1.dll нужно будет добавить руками и указать, что его нужно устанавливать в системную папку. Можно даже не переносить ничего, а использовать ровно этот код как проверку наличия Project1.dll авторА если выводить свое сообщение как вы сказали вместо сис. ошибки, то будет сложнее найти, я правильно понимаю?Да. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2014, 23:25 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
vdekameron...... Зашел в C:\Program files скопировал установленную папку с программой. Пришел домой. Бац, без проблем себе запустилась. И даже устанавливать не нужно мл. :( это где ты так зашёл а а если зашёл и - тыгдын то тады - >> поф в тч Пришел домой .. )) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2014, 00:42 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Antonariy,Я давно не пользовался SF, уже не помню, что там и как конкретно А в том , чем вы пользуетесь нет поддержки генерации серийников? Можно даже не переносить ничего, а использовать ровно этот код как проверку наличия Project1.dll Я правильно понял, что функцию можно не переносить и вообще можно ничего не переносить. А сделать пустой dll и просто проверять его наличие? И еще вопрос у меня к вам. Если переносить то обязательно функцию? Т.е. если я перенесу процедуру то не сработает? В основной программе делается следующее: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
Для меня это все новое. Но я почитал об этом и разобрался чтобы понять. Я так понимаю что on error resume next приостанавливает обработку ошибок. Объясните пожалуйста что делает эта строка Set zzz = CreateObject("Project1.Class1") По смыслу я понимаю что она тут основополагающая , вот только хочется понять ее смысл а не тупо написать. И что вот эти две строчки значат? Код: vbnet 1. 2.
Может вместо этого просто написать Err.Clear() или я вообще не в ту степь? А вообще огромное спасибо, направили меня в нужное русло и очень доступно объясняете, даже я понимаю :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2014, 17:00 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Antonariy, Извините, снова коряво процитировал :( Модератор: поправил еще раз 1) научитесь пользоваться предпросмотром 2) включите в профиле "быстрый ответ" - там есть нормальное цитирование ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2014, 17:03 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
vdekameron , да эта возня с ДЛЛ - до первого запуска процмона. Ерунда, одним словом. Уж тогда просто и тупо на любой файл - исполняемый или вспомогательный - довесь поток. Он влоб не виден, просто так, без специальных телодвижений, не копируется, ламерами не обнаруживается... ... |
|||
:
Нравится:
Не нравится:
|
|||
28.12.2014, 22:26 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
А в том , чем вы пользуетесь нет поддержки генерации серийников?У меня даже нет в них нужды. Если переносить то обязательно функцию?Не обязательно. Я так понимаю что on error resume next приостанавливает обработку ошибок.Не приостанавливает обработку, а изменяет режим обработки. Объясните пожалуйста что делает эта строка Set zzz = CreateObject("Project1.Class1") Создает экземпляр класса — объект. И что вот эти две строчки значат?Первая восстанавливает режим, который был до resume next. Если ничего не было, то по умолчанию — on error goto 0. Вторая ничего не значит, если никакой логики переносить не будем. Может вместо этого просто написать Err.Clear() или я вообще не в ту степь?Эта команда обнуляет информацию о последней ошибке. При изменении режима обработки это происходит автоматически. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2014, 11:25 |
|
Лицензионный код при установки программы
|
|||
---|---|---|---|
#18+
Antonariy, Пока более-менее понятно, спасибо Нужно попробовать теперь сделать это. Я правильно понимаю. в dll я переношу допустим процедуру:- Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8.
а вместо нее в проекте пишу:- Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9.
Вот только вместо этого что? aaa = zzz.xxx(111) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.12.2014, 12:05 |
|
|
start [/forum/topic.php?fid=60&msg=38844867&tid=2156075]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 157ms |
0 / 0 |