Software license key and activation

来源:http://www.cnblogs.com/geovindu/archive/2016/08/05/5739064.html
-Advertisement-
Play Games

http://stackoverflow.com/questions/16222674/software-license-key-and-activationhttps://github.com/Labs64http://www.codeproject.com/Articles/11012/Lice ...


http://stackoverflow.com/questions/16222674/software-license-key-and-activation
https://github.com/Labs64
http://www.codeproject.com/Articles/11012/License-Key-Generation
https://ellipter.com/
https://technet.microsoft.com/en-us/library/dd346641(v=ws.10).aspx
https://code.msdn.microsoft.com/windowsapps/Product-Key-Activation-to-16c92174/view/SourceCode
https://activatar.codeplex.com/
http://dotlicense.codeplex.com/
http://www.codeproject.com/Articles/15496/Application-Trial-Maker
http://www.c-sharpcorner.com/article/a-simple-approach-to-product-activation/
http://www.codeproject.com/Articles/35009/How-to-Generate-and-Validate-CD-Keys-for-your-Soft
https://licensekeygenerator.codeplex.com/

http://softwareprotector.codeplex.com/

http://skgl.codeplex.com/

http://dotlicense.codeplex.com/

 

public static class Activation
{

    #region  Redegit Key

    public static  void MakeRegeditActivationCode()
    {
        Registry.CurrentUser.CreateSubKey(@"SOFTWARE\Activation");
    }

    public static string ReadRegeditKey()
    {
        try
        {
            RegistryKey myKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Activation", true);
            return myKey.GetValue("ActivationCode").ToString();
        }
        catch
        {
            SetRegeditKeyValue("");
            return null;
        }
    }

    public static void SetRegeditKeyValue(string value)
    {
        RegistryKey myKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Activation", true);
        myKey.SetValue("ActivationCode", value, RegistryValueKind.String);
    }

    #endregion

    #region Get Hardware Information

    public static string GetMacAddress()
    {
        string macAddresses = "";

        foreach (NetworkInterface nic in NetworkInterface.GetAllNetworkInterfaces())
        {
            macAddresses = nic.GetPhysicalAddress().ToString();
            break;
        }
        return macAddresses;
    }

    public static string GetCpuId()
    {
        string cpuid = null;
        try
        {
            ManagementObjectSearcher mo = new ManagementObjectSearcher("select * from Win32_Processor");
            foreach (var item in mo.Get())
            {
                cpuid = item["ProcessorId"].ToString();
            }
            return cpuid;
        }
        catch
        {
            return null;
        }
    }

    #endregion

    #region Hash Function

    public static string MyCustomHash(string input)
    {
        System.Security.Cryptography.MD5CryptoServiceProvider x = new System.Security.Cryptography.MD5CryptoServiceProvider();
        byte[] bs = System.Text.Encoding.UTF32.GetBytes(input);
        bs = x.ComputeHash(bs);
        System.Text.StringBuilder s = new System.Text.StringBuilder();
        int select = 1;
        foreach (byte b in bs)
        {
            switch (select)
            {
                case 1:
                    s.Append(b.ToString("x4").ToLower());
                    break;
                case 2:
                    s.Append(b.ToString("x3").ToLower());
                    break;
                case 3:
                    s.Append(b.ToString("x2").ToLower());
                    break;
                case 4:
                    s.Append(b.ToString("x1").ToLower());
                    break;
                default:
                    break;
            }
            select++;
            if (select > 4) select = 1;
        }
        string password = s.ToString();
        return password;
    }

    #endregion

}

  


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1、模塊實物 2、引腳說明 3、連接說明,按下圖將引腳連接到PC的串口(VCC接3V,GND接地,TX接串口TX,RX接串口的RX,CH_PD接3V,否則wifi不工作) 4、通過該PC串口配置WiFi模塊參數 a)通過PC串口連接模塊 b)重置WiFi模塊 c)啟動多模塊連接 d)開啟TCD伺服器 ...
  • wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz tar zxvf lrzsz-0.12.20.tar.gz cd lrzsz-0.12.20 ./configure make make install 上面安裝過程預設把lsz和lr ...
  • 1:當安裝好虛擬機,安裝好Ubuntu操作系統後,登陸的時候發現除了自己的設置的用戶就是外來用戶,其實Ubuntu中的root帳號預設是被禁用了的,所以登陸的時候沒有這個賬號,但是如果每次使用root都進行切換的話會顯的很繁瑣,所以下文就是設置root賬戶。 (由於操作過程中忘記截圖,但是為了方便大 ...
  • 最近領導讓我寫一篇關於Mac的使用教程,因為使用人群未知,所以儘量寫的通俗易懂,可謂是關於Mac電腦使用的精簡教程吧,在此發表出來以供參考。 Mac因為安全性而聞名,我們擁有了一部Mac,那麼我們來瞭解如何使用它。相信下麵會讓您便捷的使用您的Mac。 桌面 您的桌面也許是這樣的,位置或者圖形稍有差異 ...
  • 在企業級軟體系統中,資料庫的地位是比較高的,而且一般都要求支持多種資料庫,如 Oracle、 DB2、MySQL 等,它們的最新版本大多都不再支持 macOS 系統,所以裝一個 Linux 或 Windows 的虛擬機是很有必要的。使用 Parallel Desktop 安裝 Windows 10 ... ...
  • Type at the command prompt tar xvzf file-1.0.tar.gz - tgfo uncompress a gzip tar file (.tgz or .tar.gz) tar xvjf file-1.0.tar.bz2 - to uncompress a bz... ...
  • 安裝了debian 8.5 就出問題了. root@debian8:~# lsb_release -aNo LSB modules are available.Distributor ID: DebianDescription: Debian GNU/Linux 8.5 (jessie)Releas ...
  • 雖然大多數人的註意力都集中在.NET Core上,但與原來的.NET Framework相關的工作還在繼續。.NET Framework 4.6.2正式版已於近日發佈,其重點是安全和WinForms/WPF/ASP.NET/WCF相關的特性,英文博客文章https://blogs.msdn.micr... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...