DLL命令表
.版本 2.DLL命令 CryptCreateHash, 整數(shù)型, "advapi32.dll", "CryptCreateHash", 公開 .參數(shù) hProv, 整數(shù)型 .參數(shù) Algid, 整數(shù)型 .參數(shù) hKey, 整數(shù)型 .參數(shù) dwFlags, 整數(shù)型 .參數(shù) phHash, 整數(shù)型, 傳址.DLL命令 CryptDestroyHash, 整數(shù)型, "advapi32.dll", "CryptDestroyHash", 公開 .參數(shù) hHash, 整數(shù)型, 傳址.DLL命令 CryptGetHashParam, 整數(shù)型, "advapi32.dll", "CryptGetHashParam", 公開 .參數(shù) hHash, 整數(shù)型 .參數(shù) dwParam, 整數(shù)型 .參數(shù) pByte, 字節(jié)集 .參數(shù) pdwDataLen, 整數(shù)型, 傳址 .參數(shù) dwFlags, 整數(shù)型.DLL命令 CryptReleaseContext, 整數(shù)型, "advapi32.dll", "CryptReleaseContext", 公開 .參數(shù) hProv, 整數(shù)型, 傳址 .參數(shù) dwFlags, 整數(shù)型, 傳址.DLL命令 CryptHashData, 整數(shù)型, "advapi32.dll", "CryptHashData", 公開 .參數(shù) hHash, 整數(shù)型 .參數(shù) pbData, 字節(jié)集, 傳址 .參數(shù) dwDataLen, 整數(shù)型 .參數(shù) dwFlags, 整數(shù)型.DLL命令 CryptAcquireContextA, 整數(shù)型, "advapi32.dll", "CryptAcquireContextA", 公開 .參數(shù) phProv, 整數(shù)型, 傳址 .參數(shù) pszContainer, 文本型 .參數(shù) pszProvider, 文本型 .參數(shù) dwProvType, 整數(shù)型 .參數(shù) dwFlags, 整數(shù)型
生成注冊碼的代碼
.版本 2.支持庫 dp1.程序集 窗口程序集1.子程序 _生成按鈕_被單擊.局部變量 sj1, 文本型.局部變量 sj2, 文本型.局部變量 sj3, 文本型.局部變量 臨時文本, 文本型.局部變量 臨時時間, 日期時間型.如果 (類型組合框.現(xiàn)行選中項 = 0) 臨時時間 = [2080年12月31日].否則 臨時時間 = 日期框.今天.如果結束sj1 = 到文本 (取年份 (臨時時間))sj2 = 到文本 (取月份 (臨時時間))sj2 = 選擇 (取文本長度 (sj2) = 1, “0” + sj2, sj2)sj3 = 到文本 (取日 (臨時時間))sj3 = 選擇 (取文本長度 (sj3) = 1, “0” + sj3, sj3)臨時文本 = 到文本 (左移 (到數(shù)值 (sj1 + sj2 + sj3), 4))臨時文本 = 進制_十到十六 (到數(shù)值 (臨時文本))臨時文本 = 臨時文本 + 進制_十到十六 (取文本長度 (臨時文本) + 1)臨時文本 = 到大寫 (取數(shù)據(jù)摘要 (到字節(jié)集 (機器碼編輯框.內(nèi)容 + 校驗_取sha1 (到字節(jié)集 (機器碼編輯框.內(nèi)容))))) + 臨時文本注冊碼編輯框.內(nèi)容 = 臨時文本置剪輯板文本 (注冊碼編輯框.內(nèi)容).子程序 _類型組合框_列表項被選擇.如果 (類型組合框.現(xiàn)行選中項 = 0) 日期框.禁止 = 真.否則 日期框.禁止 = 假.如果結束.子程序 進制_十到十六, 文本型, 公開, 運算_十進制到十六進制.參數(shù) 十進制數(shù), 整數(shù)型返回 (取十六進制文本 (十進制數(shù))).子程序 校驗_取sha1, 文本型, 公開, 返回40位的校驗數(shù)據(jù).參數(shù) 字節(jié)集數(shù)據(jù), 字節(jié)集, , 要取數(shù)據(jù)摘要的字節(jié)集返回 (到小寫 (MD過程 (字節(jié)集數(shù)據(jù), 32772, 20))).子程序 MD過程, 文本型.參數(shù) x, 字節(jié)集.參數(shù) 種類, 整數(shù)型.參數(shù) 長度, 整數(shù)型.局部變量 hCryptProv, 整數(shù)型.局部變量 hKey, 整數(shù)型.局部變量 hHash, 整數(shù)型.局部變量 pbBuffer, 字節(jié)集.局部變量 cbHash, 整數(shù)型.局部變量 rgbHash, 字節(jié)集.局部變量 rgbDigits, 字節(jié)集.局部變量 局_MD5, 字節(jié)集.局部變量 b, 整數(shù)型.局部變量 i, 整數(shù)型.局部變量 len, 整數(shù)型.如果 (CryptAcquireContextA (hCryptProv, “”, “”, 1, -268435456) = 0) .如果真 (CryptAcquireContextA (hCryptProv, “”, “”, 1, 0) = 0) 返回 (“”) .如果真結束.否則 .如果 (CryptCreateHash (hCryptProv, 種類, hKey, 0, hHash) = 0) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 pbBuffer = x len = 取字節(jié)集長度 (x) .如果 (CryptHashData (hHash, pbBuffer, len, 0) = 0) CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 rgbHash = 取空白字節(jié)集 (長度) cbHash = 長度 .如果 (CryptGetHashParam (hHash, 2, rgbHash, cbHash, 0) = 0) CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) 返回 (“”) .否則 rgbDigits = 到字節(jié)集 (“0123456789ABCDEF”) 局_MD5 = 取空白字節(jié)集 (長度 × 2) .變量循環(huán)首 (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] .變量循環(huán)尾 () CryptDestroyHash (hHash) CryptReleaseContext (hCryptProv, 0) .如果結束 .如果結束 .如果結束.如果結束返回 (到文本 (局_MD5))
運行結果:
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網(wǎng)的支持。
新聞熱點
疑難解答