您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“易語言注冊機如何生成永久或限時注冊碼”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“易語言注冊機如何生成永久或限時注冊碼”這篇文章吧。
DLL命令表
.版本 2 .DLL命令 CryptCreateHash, 整數型, "advapi32.dll", "CryptCreateHash", 公開 .參數 hProv, 整數型 .參數 Algid, 整數型 .參數 hKey, 整數型 .參數 dwFlags, 整數型 .參數 phHash, 整數型, 傳址 .DLL命令 CryptDestroyHash, 整數型, "advapi32.dll", "CryptDestroyHash", 公開 .參數 hHash, 整數型, 傳址 .DLL命令 CryptGetHashParam, 整數型, "advapi32.dll", "CryptGetHashParam", 公開 .參數 hHash, 整數型 .參數 dwParam, 整數型 .參數 pByte, 字節集 .參數 pdwDataLen, 整數型, 傳址 .參數 dwFlags, 整數型 .DLL命令 CryptReleaseContext, 整數型, "advapi32.dll", "CryptReleaseContext", 公開 .參數 hProv, 整數型, 傳址 .參數 dwFlags, 整數型, 傳址 .DLL命令 CryptHashData, 整數型, "advapi32.dll", "CryptHashData", 公開 .參數 hHash, 整數型 .參數 pbData, 字節集, 傳址 .參數 dwDataLen, 整數型 .參數 dwFlags, 整數型 .DLL命令 CryptAcquireContextA, 整數型, "advapi32.dll", "CryptAcquireContextA", 公開 .參數 phProv, 整數型, 傳址 .參數 pszContainer, 文本型 .參數 pszProvider, 文本型 .參數 dwProvType, 整數型 .參數 dwFlags, 整數型
生成注冊碼的代碼
.版本 2 .支持庫 dp1 .程序集 窗口程序集1 .子程序 _生成按鈕_被單擊 .局部變量 sj1, 文本型 .局部變量 sj2, 文本型 .局部變量 sj3, 文本型 .局部變量 臨時文本, 文本型 .局部變量 臨時時間, 日期時間型 .如果 (類型組合框.現行選中項 = 0) 臨時時間 = [2080年12月31日] .否則 臨時時間 = 日期框.今天 .如果結束 sj1 = 到文本 (取年份 (臨時時間)) sj2 = 到文本 (取月份 (臨時時間)) sj2 = 選擇 (取文本長度 (sj2) = 1, “0” + sj2, sj2) sj3 = 到文本 (取日 (臨時時間)) sj3 = 選擇 (取文本長度 (sj3) = 1, “0” + sj3, sj3) 臨時文本 = 到文本 (左移 (到數值 (sj1 + sj2 + sj3), 4)) 臨時文本 = 進制_十到十六 (到數值 (臨時文本)) 臨時文本 = 臨時文本 + 進制_十到十六 (取文本長度 (臨時文本) + 1) 臨時文本 = 到大寫 (取數據摘要 (到字節集 (機器碼編輯框.內容 + 校驗_取sha1 (到字節集 (機器碼編輯框.內容))))) + 臨時文本 注冊碼編輯框.內容 = 臨時文本 置剪輯板文本 (注冊碼編輯框.內容) .子程序 _類型組合框_列表項被選擇 .如果 (類型組合框.現行選中項 = 0) 日期框.禁止 = 真 .否則 日期框.禁止 = 假 .如果結束 .子程序 進制_十到十六, 文本型, 公開, 運算_十進制到十六進制 .參數 十進制數, 整數型 返回 (取十六進制文本 (十進制數)) .子程序 校驗_取sha1, 文本型, 公開, 返回40位的校驗數據 .參數 字節集數據, 字節集, , 要取數據摘要的字節集 返回 (到小寫 (MD過程 (字節集數據, 32772, 20))) .子程序 MD過程, 文本型 .參數 x, 字節集 .參數 種類, 整數型 .參數 長度, 整數型 .局部變量 hCryptProv, 整數型 .局部變量 hKey, 整數型 .局部變量 hHash, 整數型 .局部變量 pbBuffer, 字節集 .局部變量 cbHash, 整數型 .局部變量 rgbHash, 字節集 .局部變量 rgbDigits, 字節集 .局部變量 局_MD5, 字節集 .局部變量 b, 整數型 .局部變量 i, 整數型 .局部變量 len, 整數型 .如果 (CryptAcquireContextA (hCryptProv, “”, “”, 1, -268435456) = 0) .如果真 (CryptAcquireContextA (hCryptProv, “”, “”, 1, 0) = 0) 返回 (“”) .如果真結束 .否則 .如果 (CryptCreateHash (hCryptProv, 種類, hKey, 0, hHash) = 0) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 pbBuffer = x len = 取字節集長度 (x) .如果 (CryptHashData (hHash, pbBuffer, len, 0) = 0) CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 rgbHash = 取空白字節集 (長度) cbHash = 長度 .如果 (CryptGetHashParam (hHash, 2, rgbHash, cbHash, 0) = 0) CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 rgbDigits = 到字節集 (“0123456789ABCDEF”) 局_MD5 = 取空白字節集 (長度 × 2) .變量循環首 (0, cbHash - 1, 1, i) b = rgbHash [i + 1] 局_MD5 [i × 2 + 1] = rgbDigits [右移 (b, 4) + 1] 局_MD5 [i × 2 + 2] = rgbDigits [位與 (b, 15) + 1] .變量循環尾 () CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) .如果結束 .如果結束 .如果結束 .如果結束 返回 (到文本 (局_MD5))
運行結果:
以上是“易語言注冊機如何生成永久或限時注冊碼”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。