powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Лицензионный код при установки программы
25 сообщений из 65, страница 1 из 3
Лицензионный код при установки программы
    #38843537
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго время суток! Подскажите пожалуйста есть ли возможность сделать какой-то лицензионный код для программы в Visual Basic 6.0 Я вообще не знаю можно ли это сделать и на какой стадии. Может при создании инсталляционного пакета? Подскажите пожалуйста подробно, я чайник в этом полный <_<
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843578
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Самый простой способ — воспользоваться инсталлятором, имеющим функцию генерации серийников. Такая фича есть в Setup Factory, кроме того он понимает проекты VB6 и сам из него подтягивает необходимые компоненты. Но он платный. Но есть кряки.

Само собой, ничто не помешает переписать программу (вместе с компонентами) на другой компьютер после установки.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843582
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariy
Само собой, ничто не помешает переписать программу (вместе с компонентами) на другой компьютер после установки.

Что вы имеете в виду? Т.е. если я установлю кому-то программу. Он сможет ее потом установить без екзешника на др. комп??
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843588
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для выбора технологии (а потом и инструментов) защиты ПО Вы сначала должны определиться, какими ресурсами и возможностями для этого Вы обладаете, какие именно задачи решаете и какие именно ограничения намерены ввести.
А пока Вам можно чёрт те чего насоветовать, и всё это в Ваших условиях по тем или иным причинам окажется неприменимо.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843675
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, Я же сразу предупредил что в этом вообще чайник. Скажу просто:- Мне нужно чтобы установив на 1 комп, программу не так уж и просто было перенести на другие! А как это сделать я не знаааааююю!!!! Для этого тут вас и спрашиваю. Сами понимаете что раз я в этом здравствуй дерево, то подойдет самый простой и при этом надежный способ! У меня только VB6 и его стандартный упаковщик и всеее. Если что-то нужно могу без проблем скачать. Только подскажите как и что. Плииииз
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843708
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vdekameron,

Вам для начала надо погуглить, ибо тема эта далеко не короткая. Вы можете написать и свою процедуру создания ключа - главное понимать на что Вы его хотите завязать и хотите ли. Если цель тупо без привязки к чему-либо сделать уникальный ключ, то создайте массив символов(латиница в разных регистрах, числа, может иные симпатичные Вам символы) и из этого массива случайным отбором собираете в одну строку символы. Длину строки можно сделать 20-символьной или больше. Чем больше символов - тем меньше шансов получить на двух разных ПК идентичный код.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843732
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist, Звучит красиво))) Но я это не смогу сделать. Вообще не работал ни с массивами. и никогда не делал этого.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843855
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vdekameronВообще не работал ни с массивами. и никогда не делал этогоНу тогда изучайте, что еще можно сказать. Если Вы даже этого не знаете - нафига вообще какой-то ключ? К чему должен быть этот ключ? К программе из одного MsgBox-а?
Вы просили подсказать как и что - мы подсказали. Дерзайте.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843864
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist, Спасибо за помощь
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38843918
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vdekameronМне нужно чтобы установив на 1 комп, программу не так уж и просто было перенести на другие!Ну вот первейший вопрос - Вы лично будете ставить эту программу? Или кто-то другой, в наличии такой защиты не сильно заинтересованный?

Надеюсь, Вы понимаете, что защита, поставленная в первом случае, вовсе не обязательно может быть поставлена во втором? по-моему, это должно быть очевидно даже тому, кто с деревом здоровается...

И это не единственный вопрос, на который Вы (если бы не паниковали, а подумали) должны были уже, сразу, изначально, без наших пинков, дать ответы.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844092
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vdekameronAntonariyСамо собой, ничто не помешает переписать программу (вместе с компонентами) на другой компьютер после установки.

Что вы имеете в виду? Т.е. если я установлю кому-то программу. Он сможет ее потом установить без екзешника на др. комп??Не без экзешника, а без дистрибутива. Да - обладая познаниями о разработке на уровне выше чайника.
А вы как чайник на что рассчитывали? Нечайникам уже давно известно, что надежно защитить программу на VB невозможно.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844097
Фотография Vw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Api функция получения номера жесткого диска, чтобы привязать к компу (примеров масса)
и xor
тут можно почитать http://maxim.int.ru/stuff/xaxaxakep/?074/112/1.htm
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844305
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinavdekameronМне нужно чтобы установив на 1 комп, программу не так уж и просто было перенести на другие!Ну вот первейший вопрос - Вы лично будете ставить эту программу? Или кто-то другой, в наличии такой защиты не сильно заинтересованный?


Я лично буду устанавливать ее! Просто как то обидно. Делал делал, вас тут всех замучил. Сделал наконец! Создал дистрибутив. Установил на рабочем компе. Зашел в C:\Program files скопировал установленную папку с программой. Пришел домой. Бац, без проблем себе запустилась. И даже устанавливать не нужно мл. :(
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844308
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariy, Я понимаю что допустим для вас не составит труда взломать дистрибутив сделанный в VB6 . Но есть же все-таки какие-то элементарные защиты. Не все же такие продвинутые.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844314
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariy, Скажите Setup Factory поможет?
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844395
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vdekameron И даже устанавливать не нужно мл. :(Можно вынести некоторые функции в отдельную dll, которую устанавливать в системную папку. Тогда при копировании лишь папки с exe на другой комп, exe будет ругаться на отсутствующую библиотеку. Если обращаться к dll через позднее связывание, то можно вместо системной ошибки, указывающей на то, какой именно библиотеки не хватает, вывести своё сообщение.

Если такого уровня защиты достаточно, то достаточно и setup factory.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844427
ART-CODE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я свое ПО защищал так:
Написал программу-регистратор рабочего места.
1 - она собирала все, до чего могла дотянуться - версию ОС, процессора, памяти, серийники дисков,
и оставляла в реестре спец. метки о пройденной процедуре регистрации.
2 - по результатам сборки иф. регистратор рабочего места составлял хеш, отправляемый на сервер.
3 - на сервере выполнялась сборка программы с прошитым в скрытых ресурсах хешем
4 - готовая программа отправлялась на рабочее место, и при старте собирала инф. о рабочем месте
и сверяла со вшитым в нее хешем, и проверяла в реестре спец. метки о прохождении процедуры регистрации.

Разумеется, хеш не хранится в исполняемом файле "просто так" как обычная строка,
там задействованы методы генерации символьных последовательностей "на лету"
(авто-генерация С++ кода исходника) , поэтому без дизассемблера и прохода по всем
переходам- не разобраться.

В случае обновления железа или ОС нет проблем пройти повторную
регистрацию рабочего места и выполнить новую сборку программы.

Использовалось не для продажи программ, а для установки ПО внутри организации.
Просто, ПО было критически важным и поэтому такие "строгости".

Мне этого хватало.
Но, как сказали уже ранее, у всех свои задачи и ситуации.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844533
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariyvdekameron И даже устанавливать не нужно мл. :(Можно вынести некоторые функции в отдельную dll, которую устанавливать в системную папку. Тогда при копировании лишь папки с exe на другой комп, exe будет ругаться на отсутствующую библиотеку. Если обращаться к dll через позднее связывание, то можно вместо системной ошибки, указывающей на то, какой именно библиотеки не хватает, вывести своё сообщение.

Если такого уровня защиты достаточно, то достаточно и setup factory.
Такого будет достаточно) Уже скачал setup factory порылся там, посмотрел. Там, как вы говорили нашел возможность генерить серийники. Я сгенерировал 2 для проверки и указал что можно устанавливать программу 2 раза(истечение срока). Собрал дистрибут. Когда устанавливал вышло сообщение о том что можно установить только 2 раза а вот про серийники ни слова. Может их как то цеплять еще нужно. В мастере при создании дистрибута ничего не предлагалось. И если можно расскажите подробно как с dll это проделать...там в стандартных тоже этого нет. Получается если юзер найдет эту dll библиотеку тогда сможет перекинуть на др. комп. А если выводить свое сообщение как вы сказали вместо сис. ошибки, то будет сложнее найти, я правильно понимаю?
Заранее спасибо за помощь.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844632
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я давно не пользовался SF, уже не помню, что там и как конкретно, а конкретно серийниками не пользовался вообще, просто отметил эту фичу.
У SF есть несколько типов диалогов, которые появляются по ходу установки, возможно ввод серийника это один из диалогов, который нужно добавить.

авторИ если можно расскажите подробно как с dll это проделать...там в стандартных тоже этого нет.Это нужно делать не в SF.
Создается новый vb-проект типа ActiveX dll, по умолчанию это будет Project1 с Class1. В Class1 из программы переносится какая-нибудь функция:

Код: vbnet
1.
2.
3.
public function xxx(yyy) as Variant

end function

Проект компилируется.
В основной программе делается следующее:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim zzz as Object
on error resume next
Set zzz = CreateObject("Project1.Class1")
If Err.Number<>0 then
   Msgbox "программа работать не может, пичалька"
   Exit sub
End If
On Error goto как было до resume next
aaa = zzz.xxx(111)

В SF Project1.dll нужно будет добавить руками и указать, что его нужно устанавливать в системную папку.

Можно даже не переносить ничего, а использовать ровно этот код как проверку наличия Project1.dll

авторА если выводить свое сообщение как вы сказали вместо сис. ошибки, то будет сложнее найти, я правильно понимаю?Да.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844655
1001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vdekameron...... Зашел в C:\Program files скопировал установленную папку с программой.

Пришел домой.
Бац, без проблем себе запустилась.
И даже устанавливать не нужно мл. :(


это где ты так зашёл
а

а если зашёл и - тыгдын

то тады
- >> поф
в тч Пришел домой ..

))
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844866
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariy,Я давно не пользовался SF, уже не помню, что там и как конкретно А в том , чем вы пользуетесь нет поддержки генерации серийников?
Можно даже не переносить ничего, а использовать ровно этот код как проверку наличия Project1.dll Я правильно понял, что функцию можно не переносить и вообще можно ничего не переносить. А сделать пустой dll и просто проверять его наличие? И еще вопрос у меня к вам. Если переносить то обязательно функцию? Т.е. если я перенесу процедуру то не сработает?
В основной программе делается следующее:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim zzz as Object
on error resume next
Set zzz = CreateObject("Project1.Class1")
If Err.Number<>0 then
   Msgbox "программа работать не может, пичалька"
   Exit sub
End If
On Error goto как было до resume next
aaa = zzz.xxx(111)


Для меня это все новое. Но я почитал об этом и разобрался чтобы понять. Я так понимаю что on error resume next приостанавливает обработку ошибок. Объясните пожалуйста что делает эта строка Set zzz = CreateObject("Project1.Class1") По смыслу я понимаю что она тут основополагающая , вот только хочется понять ее смысл а не тупо написать. И что вот эти две строчки значат?
Код: vbnet
1.
2.
On Error goto как было до resume next
aaa = zzz.xxx(111)

Может вместо этого просто написать Err.Clear() или я вообще не в ту степь?
А вообще огромное спасибо, направили меня в нужное русло и очень доступно объясняете, даже я понимаю :)
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38844867
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariy, Извините, снова коряво процитировал :( Модератор: поправил еще раз
1) научитесь пользоваться предпросмотром
2) включите в профиле "быстрый ответ" - там есть нормальное цитирование
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38845037
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vdekameron , да эта возня с ДЛЛ - до первого запуска процмона. Ерунда, одним словом. Уж тогда просто и тупо на любой файл - исполняемый или вспомогательный - довесь поток. Он влоб не виден, просто так, без специальных телодвижений, не копируется, ламерами не обнаруживается...
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38845328
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в том , чем вы пользуетесь нет поддержки генерации серийников?У меня даже нет в них нужды.
Если переносить то обязательно функцию?Не обязательно.
Я так понимаю что on error resume next приостанавливает обработку ошибок.Не приостанавливает обработку, а изменяет режим обработки.
Объясните пожалуйста что делает эта строка Set zzz = CreateObject("Project1.Class1") Создает экземпляр класса — объект.
И что вот эти две строчки значат?Первая восстанавливает режим, который был до resume next. Если ничего не было, то по умолчанию — on error goto 0.
Вторая ничего не значит, если никакой логики переносить не будем.
Может вместо этого просто написать Err.Clear() или я вообще не в ту степь?Эта команда обнуляет информацию о последней ошибке. При изменении режима обработки это происходит автоматически.
...
Рейтинг: 0 / 0
Лицензионный код при установки программы
    #38845374
vdekameron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariy,

Пока более-менее понятно, спасибо Нужно попробовать теперь сделать это. Я правильно понимаю. в dll я переношу допустим процедуру:-
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub Raschet_na_deni()
         VB = VelVB
         NB = VelNB
           Vtek = 0
            Moduli_rascheta
               NB1.Text = NB: VNB1 = NB: VB1.Text = VB: VVB1 = VB1.Text: G1.Text = Generaciia:  P1.Text = Pritok: _
               IzmNB1.Text = Raznica_NB: IzmVB1.Text = Rost_padenie: Rashod1.Text = Rashod 
End Sub


а вместо нее в проекте пишу:-
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim zzz as Object
on error resume next
Set zzz = CreateObject("Project1.Class1")
If Err.Number<>0 then
   Msgbox "программа работать не может, пичалька"
   Exit sub
End If
On Error goto 0
aaa = zzz.xxx(111)

Вот только вместо этого что? aaa = zzz.xxx(111)
...
Рейтинг: 0 / 0
25 сообщений из 65, страница 1 из 3
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Лицензионный код при установки программы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]