Как создать пробную версию программного обеспечения .NET?

Есть ли в Visual Studio встроенные инструменты для создания пробных версий программного обеспечения? Если нет, какие инструменты могут сделать эту работу?

Каковы лучшие практики создания пробных версий на платформе .NET?

Как эти методы зависят от типа приложения (веб-приложения, приложения Windows Forms и т. Д.)?


person sashaeve    schedule 11.03.2010    source источник


Ответы (5)


«Пробный» статус - понятие довольно расплывчатое. Трудно указать это так точно, чтобы для него можно было построить «инструмент».

Какой вариант?

Программное обеспечение, устанавливаемое локально:

  • Правовое ограничение. Полная функциональность выдается сразу, но пользователь должен сознательно прекратить ее использование по истечении пробного периода. В основном, защита доверием (для частных пользователей) или защита от судебного преследования (для пользователей компании).

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

Программное обеспечение для Интернета:

  • Пробная или полная версия зависит от активированных функций в учетной записи пользователя. Поскольку все пользователи получают доступ к приложению через Интернет, ни у кого нет копии программного обеспечения для его несанкционированной установки. Каждый пользователь работает со своей учетной записью и имеет доступ только к предоставленным им функциям.
person Community    schedule 11.03.2010

Это очень хорошо описано в Начальном наборе условно-бесплатного ПО. У него есть код для ограниченных пробных версий, безопасной активации, регистрации и интеграции с Paypal. Настоятельно рекомендуется, вы же не хотите изобретать это колесо.

Ссылка, которую я вам дал, не очень удачная, вы должны щелкнуть лицензию, чтобы перейти к загрузке. Я больше не могу найти ссылку, описывающую версию этого набора для C #.

person Hans Passant    schedule 11.03.2010

Проверьте следующую ветку: Реализация 30-дневной пробной версии.

Существуют наборы инструментов, которые доступны для реализации функций пробной версии, как указано в одном из потоков Инструмент защиты от копирования для ограничения количества единиц.

Я не знаю, предоставляет ли Visual Studio некоторые встроенные инструменты для реализации функции пробной версии в программном обеспечении.

person K Singh    schedule 11.03.2010
comment
Я думаю, можно с уверенностью сказать, что VS не этого предоставляет. - person Klaus Byskov Pedersen; 11.03.2010

В Visual Studio или .Net есть встроенные инструменты для лицензирования и защиты от копирования. Вам необходимо разработать свою схему или использовать уже готовую.

Передовой опыт и советы см. В этой статье: 8 способов сделать ваше программное обеспечение защищенным от взлома и взлома с помощью криптографического лицензирования

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я работаю в LogicNP Software, разработчиках CryptoLicensing.

person logicnp    schedule 29.07.2011

Функциональность пробной версии реализуется путем чтения из реестра даты установки, и если выбран режим Пробная или Действительный ...

эти классы можно использовать для чтения и записи в реестр и из него ...

    static string Regname = "Registryname";
    public bool writeRegistryKey(string Key, string value)
    {
        try
        {
            Microsoft.Win32.RegistryKey key;

            key = Microsoft.Win32.Registry.ClassesRoot.CreateSubKey(Regname);
            key.SetValue(Key, value);
            key.Close();
            return true;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
            return false;
        }
    }

    public string readRegistryKey(string Value)
    {
        try
        {

            string keyValue = null;
            Microsoft.Win32.RegistryKey key;
            key = Microsoft.Win32.Registry.ClassesRoot.CreateSubKey(Regname);
            keyValue = key.GetValue(id).ToString();
            key.Close();
            return keyValue;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
            return null;
        }
    } 
person user1942876    schedule 09.01.2013
comment
Я заметил, что восстановление реестра до предыдущего состояния (перед установкой) не позволяет продлить пробный период, а удаление файлов, созданных программным обеспечением, не помогает. Я говорю о тех, кто не пользуется сервером в течение пробного периода. - person user2284570; 13.03.2016