1.license gen tool簡介
這是一款使用者軟體授權管理license檔案生成器,輸入是使用者的機器指紋,使用者的授權資訊(包括軟體的使用期限,各個模組的授權)等,
輸出是乙個license檔案,使用者客戶執行授權軟體時進行授權管理,還輸出乙個license資料庫,方便後續管理。
2.用到的技術
2.1qt相關的知識
包括ui 控制項 發布 搭建環境等
2.2 sqlite資料庫技術
2.3 openssl演算法
3.開發中遇到的問題
3.1openssl rsa解密時,程式會掛掉
原因是在拷貝解密資料時使用了strncat
memset((void*)pc_tmpbuf,
'\0',sz_buflen);
strncat(pc_tmpbuf,pc_buffer,
sz_buflen);
首先這樣的操作很不規範,拷貝為什麼要使用strncat呢,雖然理論上講的通,將pc_tmpbuf初始化為了\0,此時strncat就是strcpy的作用。
但是用於解密資料可能會有\0,此時使用str的函式並不合理,應該是使用memcpy
3.2 函式呼叫時傳遞了空指標
size_t*retlen;
func_retdecrypt_identifiers(char
*pc_buffer,
const
size_t
sz_buflen,
const
char
*pc_rsa_pri_key_name,
const
char
*pc_decrypt_file_name,
size_t
*psz_write_len)
decrypt_identifiers(pc_tmpbuf,sz_read_len,prikey_decrypt_key_file_name
,decrypt_file_name
,retlen);
size_t這個引數是帶有返回功能的,因為沒有用到這個的返回值,所以沒有考慮太多,直接傳遞了乙個指標retlen。但是這個指標未被初始化,在*psz_write_len
decrypt_identifiers中對其賦值時會產生意想不到的問題。出現有時候可以執行,有時候會宕機。
指標使用前一定要初始化。
web開發 牛腩總 細節篇
前一陣子做完 牛腩新聞發布系統 後,對其中遇到的一些問題做一下彙總和細節的把握,現在發出來留作記錄。希望對以後有幫助。1.sql服務沒有開啟 資料庫連線字串寫錯。2.資料庫中有外來鍵關聯。3.資料類因保護級別受限不可訪問 檢查問題類是否宣告為public。4.web.config檔案新增 1.按鈕r...
伺服器開發總篇
看著自己之前寫的部落格並沒有乙個良好的總結,看著自己的知識體系並沒有良好的建立,今日自己終於幡然醒悟,意識到自己在生活,在學習中的許多不足。其實吧部落格就是個人技術及經驗的積累,是宣洩自己心中所想所悟之所。伺服器開發 學習筆記 師從 伺服器開發 學習筆記 環境配置 伺服器開發 學習筆記 簡單的客戶端...
NXP ZigBee JN5169開發流程總結
經過乙個多月的摸索,現總結jn516x的開發流程如下 安裝ide和sdk。源 的編寫 這裡又包括圖形介面的配置,和原始檔中的純 的編寫 編譯 可能要動手自己修改makefile。燒寫 又分為uart模式燒寫和jtag模式燒寫。執行看功能,可能需要抓包。接著簡單展開描述一下 安裝ide和sdk的資料網...