原创 使用C++生成條形碼

一、條形碼介紹 條形碼(barcode)是將寬度不等的多個黑條和空白,按照一定的編碼規則排列,用以表達一組信息的圖形標識符。常見的條形碼是由反射率相差很大的黑條(簡稱條)和白條(簡稱空)排成的平行線圖案。 條碼種類很多,常見的大概

原创 Qt無邊框窗體實現方案

Qt雖然提供了諸如Qt::FramelessWindowHint之類的屬性可以移除窗體的邊框,但是移除邊框之後,窗體的一些默認行爲也被移除了,如鼠標拖動改變大小、雙擊標題欄最大化等,這些行爲需要開發者自己來實現。 本文主要介紹實現

原创 Git/TortoiseSVN/TortoiseGit常用配置

一、TortoiseSVN/TortoiseGit使用Beyond Compare作爲比較合併工具 TortoiseSVN/TortoiseGit 內置的文件比對工具是 TortoiseMerge,用於文件比對和解決衝突合併,To

原创 Windows驅動開發入門 --WDM inf文件模板

本文主要介紹安裝WDM驅動的inf文件如何編寫。 由於inf文件的規則比較複雜,寫法也比較多樣,故本文只介紹通過Visual Studio開發WDM驅動時的inf模板文件的通用寫法。 模板文件如下: ; ; 用於Visual S

原创 Qt 5.13.2版本靜態庫編譯

本文介紹如何使用MSVC編譯Qt 5.13.2版本的靜態庫. 1. 下載qt-everywhere-src-5.13.2 Qt離線下載地址:http://download.qt.io/archive/qt/ 下載完成之後,解壓

原创 WebRTC -- 流媒體基礎概念

一、流媒體協議 1.1 RTP (Real-time Transport Protocol) 1.1.1 RTP特徵 實時傳輸協議(Real-time Transport Protocol)是一個網絡傳輸層協議,它是由IETF的多

原创 WebRTC -- H264視頻編碼I、B、P幀

一、概述 H264是新一代的編碼標準,以高壓縮高質量和支持多種網絡的流媒體傳輸著稱,在編碼方面,他的理論依據是:參照一段時間內圖像的統計結果表明,在相鄰幾幅圖像畫面中,一般有差別的像素只有10%以內的點,亮度差值變化不超過2%,而

原创 日誌輸出規範

衆所周知,軟件日誌對問題的排查可以起到至關重要的作用,但在多人協同開發的情況下,可能會導致不同的人使用不同的日誌打印風格,導致日誌可閱讀性不高。縱觀各大知名軟件的輸出日誌,無不有着規範的格式,非常利於閱讀。縱觀網絡,現在鮮有對程序

原创 Lua語法快速回憶

一、基礎 Lua區分大小寫 註釋格式 -- 行註釋 --[[ exp --]] 局部變量local, 其他的爲全局變量,變量默認值爲nil 只有false和nil爲假 Lua中字符串是不可變的常量 “ … ”是字符串連接操

原创 Windows註冊自定義URL協議

原理: 在註冊表HKEY_CLASSES_ROOT項下加入對應的子項,內容如下: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\test] @="URL:test

原创 Windows資源管理器圖標覆蓋優先級設定

我們在安裝了TortoiseSVN或TortoiseGit後,會自動在資源管理器的文件夾和文件圖標上顯示覆蓋圖標(Icon Overlay),這樣會比較方便的查看文件的狀態。 但有時候我們安裝的其他軟件,如Dropbox等,也會在

原创 Windows批處理請求UAC管理員權限

@echo off cd /d "%~dp0" cacls.exe "%SystemDrive%\System Volume Information" >nul 2>nul if %errorlevel%==0 goto Admi

原创 CEF -- Windows平臺編譯

本文以CEF 3626版本爲例,其他版本的編譯可以用其作爲參考。 另,本文只是簡略的記錄了CEF編譯過程的大致步驟,並沒有事無鉅細的記錄可能遇到的任何問題,畢竟編譯CEF是一個繁瑣的事情,需要一定的獨立解決問題的能力。 假設:

原创 Fiddler抓包指南:結合Proxifier工具

本文介紹如何使用Fiddler抓取HTTP和HTTPS協議的包,同時還介紹瞭如何結合Proxifier工具來處理Filddler無法抓取到包的情況。 一、HTTP基本抓包 Fiddler官網下載安裝:https://www.tel

原创 WebRTC -- Windows平臺編譯

寫作本文時使用的webrtc版本爲:branch heads/67 一、 準備工作 1.0 請確保可以訪問國外網站 1.1 系統語言切換到英文 系統Windows 7/10都可以,在“控制面板”–>“區域和語言”–>“管理”–