原创 Qt三層架構應用程序設計及開發

開發環境:Qt5.6.3 + Windows系統 + SQLite 說到設計界面的應用程序開發框架,離不開經典的三層架構(界面層(User Interface layer)、業務邏輯層(Business Logic Layer)、

原创 Linux與Windows動態庫Tips

Linux與Windows動態庫Tips Linux: nm -D xxx.so //查看動態庫詳細內容 nm -D xxx.so | grep xxx_* // 查看所有xxx_開頭的函數 Windows: 使用Visual

原创 Windows下Qt使用共享內存的保鏢程序

使用共享內存的保鏢程序 最近需要對程序加一個保護機制,爲了能夠持續運行而編寫一個保鏢程序,保鏢程序的功能就是啓動被保護的程序。 平臺:Win10 對於共享內存,大家都知道常用於進程通信,本篇文章其實也是簡易的進程通信。這個保護機制

原创 Qt下簡單工廠模式實現多種數據庫操作

Qt下簡單工廠模式實現多種數據庫操作簡單工廠數據庫連接基類數據庫連接派生類數據庫連接工廠類結合Qt類庫操作數據庫 簡單工廠 基於簡單的工廠設計模式,由單一工廠生產數據庫連接基類的派生類對象。 數據庫連接基類 配合Qt自帶的數據庫類

原创 Linux的入門學習(二)

   昨天學習了GCC編譯器GDB調試器Makefile以及簡單的shell寫法。今天主要是回顧昨天所學習的內容以及一些課後的補充。    首先來回

原创 Linux入門者的記錄

第一次以這樣的方式記錄自己的學習歷程,希望可以堅持下去。   昨天學習了linux的一些基礎開發環境和一些基本的命令,瞭解了linux基本的文件和目

原创 Qt使用http協議進行Json格式post數據

Qt使用http協議進行post數據 使用Qt進行post數據 近段時間項目遇到使用http協議進行post請求,簡單邏輯就是post一段請求到url,等待url回覆,若一定時間內沒有受到回覆則按超時處理。這裏直接上post相關代

原创 Qt串口通信 串口打開 數據處理

Ubuntu下Qt串口通信 Qt串口通信主要使用QSerialPort類,通信的數據類可以採用底層的unsigned char數組或者QByteArray類。下面po一段本人寫的與串口相關的代碼。 打開串口 if(m_

原创 Mysql常用指令(持續更新)

1.獲取表中字段數: select count(*) from information_schema.columns where table_schema='databaseName' and table_name='tableN

原创 git常用指令

Git常用指令 git config --global user.name “xxx” 記錄git用戶名 git config --global user.password “xxx” 記錄git密碼 git config --l

原创 關於Ubuntu14程序自啓動

Ubuntu14界面程序自啓動 開門見山,現有Qt界面程序需要開機啓動,系統是unbuntu14,程序需要連接mysql數據庫,之前查閱網上資料都說將啓動腳本寫在/etc/rc.local中,本人嘗試過失敗。原因是rc.local

原创 Linux進程通信(二)

消息隊列 消息隊列基本概念 1. 系統V消息隊列是隨內核持續的,只有在內核重起或者顯示刪除一個消息隊列時, 該消息隊列纔會真正被刪除。因此係統中記錄消息隊列的數據結構(struct ipc_ids msg_ids)位於內核中,系統中

原创 Linux網絡編程

TCP/IP四層模型 TCP/IP是一組用於實現網絡互連的通信協議Internet網絡體系結構以TCP/IP爲核心。基於TCP/IP的參考模型將協議分成四個層次,它們分別是:網絡訪問層、網際互聯層、傳輸層(主機到主機)、和應用層。 1.

原创 Linux進程間通信方式(一)

進程間通信就是在不同進程之間傳播或交換信息,不同的進程之間有什麼雙方都能訪問的介質呢?進程的用戶空間是相互獨立的,一般而言是不能相互訪問的,唯一的例外就是共享內存區。Linux的進程間通信(IPC)通信方法有管道、消息隊列、信號量、共享內

原创 基於Linux的TCP多路複用IO結構網絡在線聊天系統

項目要求 一個在Linux下可以使用的聊天軟件,要求至少實現如下功能: 1. 採用Client/Server架構 2. Client A 登陸聊天服務器前,需要註冊自己的ID和密碼 3. 註冊成功後,Client A 就可以通過自己