Интеграция функции лицензирования в проекты VB

  1. 1. Создайте проект Visual Basic с помощью Visual Studio
  2. 2. Используйте мастер установки Advanced Installer для приложения Visual Basic
  3. 3. Конвертируйте ваш проект в Enterprise
  4. 4. Добавить пробную версию и лицензирование
  5. 5. Выберите пробные варианты
  6. 5.1 Пробные варианты
  7. 5.2 Тип приложения / библиотеки
  8. 5.3 Параметры отображения
  9. 5.4 Сводка настроек интеграции
  10. 6. Интегрировать библиотеку лицензирования в приложение
  11. 7. Готово - Сборка и установка
  12. 8. Зарегистрируйте приложение
  13. 9. Удалите и очистите

В следующей статье используются параметры, доступные начиная с   предприятие   редакция и тип проекта В следующей статье используются параметры, доступные начиная с предприятие редакция и тип проекта.

Из этого туториала Вы узнаете, как создать приложение VB с поддержкой лицензирования и пробной версии с помощью Advanced Installer.

Это пошаговое руководство призвано помочь вам лучше понять, как работает функция лицензирования в Advanced Installer, и как вы можете внедрить компонент лицензирования в свой собственный проект. В этом примере мы создадим простой проект Visual Basic с использованием Visual Studio 2008.

Сам пример нашего приложения будет иметь простую форму, но вы должны найти достаточно комментариев в базовом коде, чтобы помочь вам реализовать эту функцию в любом из ваших собственных проектов. Проект будет включать в себя очень простую форму «О программе», которая будет отображать лицензионное состояние приложения.

Поскольку цель этого пошагового руководства - помочь вам понять процесс лицензирования во всей его полноте, мы будем переключаться между Advanced Installer и кодом приложения. Предполагается, что вы знакомы с основами использования Visual Studio, поэтому они не будут рассмотрены.

Таким образом, завершив наш проект Visual Basic, насколько нам хотелось бы в данный момент, мы создадим быструю сборку в Advanced Installer с помощью мастера импорта проекта Visual Studio, а затем настроим параметры лицензирования.

1. Создайте проект Visual Basic с помощью Visual Studio

С помощью Visual Studio 2008 создайте проект Visual Basic. Добавьте полоску меню и форму О программе и сохраните проект.


Позже мы добавим код, который проверит пробный период и регистрационный ключ.

2. Используйте мастер установки Advanced Installer для приложения Visual Basic

Откройте Advanced Installer и используйте специализированный шаблон «Приложение Visual Studio».


Завершите работу мастера, выбрав решение Visual Basic, созданное ранее, и вы найдете свое приложение на странице «Файлы и папки».


Сохраните проект с помощью кнопки панели инструментов [Сохранить] и выберите имя файла и папку назначения Сохраните проект с помощью кнопки панели инструментов [Сохранить] и выберите имя файла и папку назначения.

3. Конвертируйте ваш проект в Enterprise

Мастер импорта Visual Studio создал проект Advanced Installer Professional . Чтобы использовать пробные и лицензионные функции, мы должны обновить проект с Professional до Enterprise . Используйте пункт меню «Проект» -> «Параметры» для отображения страницы параметров. На странице «Тип проекта» вы сможете обновить свой проект до Enterprise .


4. Добавить пробную версию и лицензирование

Варианты лицензирования и пробной версии можно настроить из лицензирование страницу, которую вы найдете в разделе «Инструменты» на левой панели или вы можете получить к ней доступ из меню «Установка» -> «Инструменты» -> «Лицензирование».

Нажмите кнопку панели инструментов [New Trial], чтобы добавить библиотеку лицензирования в ваш проект Нажмите кнопку панели инструментов [New Trial], чтобы добавить библиотеку лицензирования в ваш проект.

Нажмите кнопку панели инструментов [New Trial], чтобы добавить библиотеку лицензирования в ваш проект

Библиотека лицензий будет помещена в папку приложений, и вы можете увидеть ее в Файлы и папки стр. Обратите внимание, что имя файла библиотеки соответствует имени конфигурации пробной версии.

Обратите внимание, что имя файла библиотеки соответствует имени конфигурации пробной версии

Имя библиотеки лицензирования будет использоваться в исходном коде приложения, поэтому лучше оставить его в той же папке, что и приложение Имя библиотеки лицензирования будет использоваться в исходном коде приложения, поэтому лучше оставить его в той же папке, что и приложение.

5. Выберите пробные варианты

Пробные варианты можно найти в Опции а также дисплей вкладки в представлении «Лицензирование». Давайте начнем с первого.

5.1 Пробные варианты

1 Пробные варианты

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

Url для покупки - страница вашего веб-сайта, которая обрабатывает покупки. По умолчанию это будет «URL продукта», указанный в информация о продукте стр.

Advanced Installer поддерживает несколько типов пробных периодов:

  • Ограниченное время - пробный период заканчивается по истечении предварительно определенного количества дней с момента установки продукта.
  • Ограниченное использование - пробный период заканчивается после предварительно определенного количества запусков приложения.
  • Оба - пробный период закончится, когда закончится одно из вышеперечисленных.

Теперь, когда мы увидели доступные типы проб, давайте выберем «Оба», потому что срок их действия истечет быстрее.

Задайте для количества пробного периода в поле «Limit At» небольшое значение, скажем, 10. Таким образом, срок действия пробной версии истечет через 10 прогонов или через 10 дней после установки.

Наконец, в поле «При установке новой версии расширение до» мы зададим количество дней и периодов использования, которые мы готовы продлить пробную версию, когда будет установлена ​​новая версия приложения. Установите это значение равным 5, поскольку у пользователя уже было некоторое время, чтобы попробовать приложение в предыдущей версии.

Давайте не будем поддерживать опцию пробного расширения, чтобы мыслить проще.

Теперь нам нужно указать, какое приложение будет использовать библиотеку лицензирования.

5.2 Тип приложения / библиотеки

2 Тип приложения / библиотеки

Есть несколько типов библиотек

  • 32-разрядная библиотека - Unicode, поддерживает ОС Win2k или выше и может использоваться в приложениях с поддержкой DEP
  • 64-битная библиотека - Unicode, поддерживает любую 64-битную ОС и может использоваться в приложениях с поддержкой DEP

Поскольку мы будем использовать библиотеку лицензирования из проекта Visual Studio 2010, который (так же, как VS 2005/2008) создает приложения с поддержкой DEP, давайте используем 32-битную версию Unicode.

5.3 Параметры отображения

3 Параметры отображения

Здесь мы можем контролировать то, как будет выглядеть наш мастер регистрации, и частоту, с которой он будет отображаться в течение пробного периода.

Обратите внимание, что процент частоты отображения применяется к числу раз, которое приложение открывается, и не строго соответствует выбору, который вы сделали на предыдущей вкладке в отношении типа пробной версии, которую вы хотели бы реализовать Обратите внимание, что процент частоты отображения применяется к числу раз, которое приложение открывается, и не строго соответствует выбору, который вы сделали на предыдущей вкладке в отношении типа пробной версии, которую вы хотели бы реализовать. По умолчанию установлено значение 30, что означает, что вы в среднем будете видеть пробный диалог при каждом третьем открытии приложения.

Мы включим опцию «Показать пробное сообщение при первом запуске», поскольку она предназначена для приложений, которые отображают лицензионное соглашение или приветственное сообщение при первом запуске.

Вы можете изменить «Banner Image» и «Dialog Image» по умолчанию, но имейте в виду, что они будут использоваться только в операционных системах, предшествующих Windows Vista.

5.4 Сводка настроек интеграции

Для интеграции приложения VB с расширенным лицензированием установщика необходимы три параметра:

  • имя библиотеки - нам нужно, чтобы определить, какая библиотека будет загружена при запуске приложения
  • тип платформы - мы должны убедиться, что наше приложение VB совместимо с выбранной платформой (32-разрядная версия).
  • ключ библиотеки - указывается на вкладке «Регистрация» и используется при вызове функций библиотеки

Теперь мы готовы вернуться в Visual Studio и интегрировать библиотеку лицензирования Advanced Installer.

6. Интегрировать библиотеку лицензирования в приложение

В нашем проекте Visual Studio позволяет установить соответствующую платформу приложения VB. Поэтому в Visual Studio перейдите в диалоговое окно «Проект» -> «Свойства» -> «Сборка» -> «Дополнительные параметры компиляции» и установите целевой ЦП на x86.

В исходный файл Form1.vb добавьте следующие фрагменты кода:

Не забудьте заменить ключ библиотеки из фрагмента кода на ключ из проекта Advanced Installer> Лицензирование> Страница регистрации Не забудьте заменить ключ библиотеки из фрагмента кода на ключ из проекта Advanced Installer> Лицензирование> Страница регистрации.

Imports System Imports System.Runtime.InteropServices ... 'Эта функция выполняет всю работу <DllImport ("Trial.dll", EntryPoint: = "ReadSettingsStr", CharSet: = CharSet.Ansi)> _ Закрытая общая функция InitTrial (ByVal aKeyCode) As String, ByVal aHWnd As IntPtr) As UInteger End Function 'Используйте эту функцию для регистрации приложения, когда приложение выполняется <DllImport ("Trial.dll", EntryPoint: = "DisplayRegistrationStr", CharSet: = CharSet.Ansi)> _ Закрытая общая функция DisplayRegistration (ByVal aKeyCode As String, ByVal aHWnd As IntPtr) As UInteger End Function 'kLibraryKey предназначен для предотвращения несанкционированного использования библиотеки. «Не делитесь этим ключом. Замените этот ключ своим собственным из проекта расширенного установщика> Лицензирование> Регистрация> Ключ библиотеки, частный общий ключ kLibraryKey As String = "3F76246B3B0E194506CBC8F512D70B9D0EF8242CEFA92E03237D7152AF70DBD428ED559FB является зарегистрированной формой, в которой зарегистрированное частное приложение (зарегистрированная блочная форма которого является зарегистрированной формой), в которой зарегистрировано состояние (является частной формой), в которой зарегистрировано состояние (является частной формой, зарегистрированной как блочная форма), в которой зарегистрировано состояние (является зарегистрированной). ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает MyBase.Load. Попробуйте Dim Proc As Process = Process.GetCurrentProcess () 'Этот вызов при необходимости отобразит пробные диалоговые окна. Dim ret = InitTrial (kLibraryKey, Proc.MainWindowHandle) «Код возврата 0 означает, что приложение зарегистрировано с использованием действительного кода, в противном случае оно находится в пробном режиме. Если ret = 0, то зарегистрировано = True End, если Catch ex As Exception MessageBox.Show (ex.ToString ()) Process.GetCurrentProcess (). Kill () End Try End Sub Private Sub DoRegister () Try Dim Proc As Process = Process.GetCurrentProcess () Dim ret = DisplayRegistration (kLibraryKey, Proc.MainWindowHandle) '0 возвращение Код n означает, что приложение уже было зарегистрировано или оно только что было зарегистрировано, в противном случае находится в пробном режиме. Если ret = 0, то зарегистрировано = True End Если Catch ex As Exception MessageBox.Show (ex.ToString ()) Close () End Try End Sub Private Sub AboutToolStripMenuItem_Click (отправитель ByVal как System.Object, ByVal e как System.EventArgs) Обрабатывает AboutToolStripMenuItem.Click Dim dlg As AboutBox1 = New AboutBox1 'Установить элемент about в зарегистрированное состояние, вычисленное, когда приложение загрузило dlgreg. Me.registered 'Отображение поля About dlg.Show () End Sub Private Sub RegisterToolStripMenuItem_Click (отправитель ByVal как System.Object, ByVal e как System.EventArgs) Обрабатывает RegisterToolStripMenuItem.Click Если зарегистрирован, то MessageBox.Show («Приложение уже зарегистрировано . "," Registered ", MessageBoxButtons.OK, MessageBoxIcon.Information) Иначе DoRegister () End If End Sub

В исходный файл AboutBox1.vb добавьте следующие фрагменты кода:

... Публично зарегистрировано как логическое частное подпрограмма AboutBox1_Load (ByVal отправитель как System.Object, ByVal e As System.EventArgs) Обрабатывает MyBase.Load ... Если Me.registered To Me.TextBoxDescription.Text = "зарегистрирован - спасибо" Остальное Me.TextBoxDescription.Text = "trial" End If End Sub

Теперь вы успешно интегрировали функцию лицензирования в свой проект.

Вы не сможете протестировать приложение, пока не установите пакет MSI Вы не сможете протестировать приложение, пока не установите пакет MSI. После этого вы можете запустить приложение из места его установки. Если вы хотите запустить приложение из Visual Studio, вам придется скопировать библиотеку «Trial.dll» из места установки в папки «bin»> «Debug» и / или «bin»> «Release» в Visual Studio папка проекта.

7. Готово - Сборка и установка

Теперь, когда мы интегрировали функции лицензирования, давайте вернемся к Advanced Installer и соберем установочный пакет.

Нажмите на кнопку панели инструментов [Build], и появится диалоговое окно «Build Project», показывающее эволюцию сборки Нажмите на кнопку панели инструментов [Build], и появится диалоговое окно «Build Project», показывающее эволюцию сборки.

Когда сборка будет завершена, нажмите кнопку на панели инструментов [Run] Когда сборка будет завершена, нажмите кнопку на панели инструментов [Run]. Появится мастер настройки, который проведет вас через процесс установки.

Поздравляем! Вы успешно создали свое лицензионное приложение. По умолчанию файл приложения будет установлен в C: \ Program Files \ Your Company \. Перейдите к этой папке в Windows Explorer и запустите приложение.

Перейдите к этой папке в Windows Explorer и запустите приложение

Нажмите кнопку [Try], и форма VB должна появиться. В диалоговом окне «О программе» должно отображаться пробное сообщение.

В диалоговом окне «О программе» должно отображаться пробное сообщение

8. Зарегистрируйте приложение

После 10 попыток (или дней - помните пробный тип используется) испытательный срок должен истечь.


На этом этапе пользователю необходимо зарегистрировать приложение, поскольку мы не включили опцию пробного расширения. Регистрационные коды можно сгенерировать на странице Advanced Installer -> Licensing -> Registration, используя ссылку «Создать регистрационные ключи».


В диалоговом окне «Создать ключи реестра» вы можете создать любое количество ключей. Ключи будут сохранены в файл, из которого вы можете легко выбрать один, когда вы хотите отправить его пользователю.

В следующий раз, когда вы создадите регистрационные ключи, вы должны заполнить «Ключ или KeyID номер для начала» последним ключом, который вы сгенерировали ранее В следующий раз, когда вы создадите регистрационные ключи, вы должны заполнить «Ключ или KeyID номер для начала» последним ключом, который вы сгенерировали ранее. Это гарантирует, что сгенерированные ключи не были сгенерированы ранее.

Скопируйте регистрационный код из файла, который вы только что сохранили. Теперь вернитесь на страницу с истекшим сроком действия пробной версии и нажмите [Зарегистрировать] и вставьте регистрационный код (если он еще не был обнаружен в буфере обмена) в текстовое поле на странице регистрации.


Нажмите [Продолжить], чтобы подтвердить регистрационный ключ.


Нажмите [Продолжить], чтобы выйти из мастера регистрации и возобновить работу приложения VB.

Приложение зарегистрировано, и мы видим его в диалоговом окне «О программе».

Приложение зарегистрировано, и мы видим его в диалоговом окне «О программе»

9. Удалите и очистите

Во время тестирования или разработки вы можете удалить любой след приложения, чтобы воспроизвести условия перед первой установкой. Для этого вы должны:

  • Удалите пакет, который удалит установленные файлы.
  • Удалите регистрационный код из реестра - по умолчанию он сохраняется в папке «Текущий пользователь \ Программное обеспечение \ Ваша компания \ Ваш продукт \ Регистрационный ключ» и может быть настроен на странице «Расширенный установщик» -> «Лицензирование» -> «Регистрация».
  • Удалите пробную информацию из системы - на странице «Advanced Installer» -> «Licensing» щелкните правой кнопкой мыши конфигурацию пробной версии и выберите «Testing»> «Remove Trial Info» (для успешного выполнения этой операции у Advanced Installer должны быть права администратора).
  • Переустановите приложение, теперь пробная версия должна работать так же, как и при первой установке. Теперь вы можете продолжить отладку.

На этом мы завершаем наш урок. Вы также можете найти полезные наши образец лицензирование проектов.