原创 2.8-局域網查找設備時有虛擬網卡干擾的編程處理方法(網絡UDP廣播包發不出去)

一、遇到問題的描述 在開發“局域網查找設備”這個功能時候,一般都會使用局域網廣播技術。常見的問題時在編寫程序的時候在自己電腦上使用沒有問題,但是在用戶或測試機器上,出現“無法查找到設備的問題”。使用WireShark軟件監聽局域網

原创 12.2-MacOS下打包QT應用程序爲DMG包,看這一篇就足夠了(包括第三方Lib庫)

一、前言 在MacOS系統中,應用軟件的安裝目錄,就在應用軟件自己裏面。因此所謂安裝macos軟件,就是直接把應用軟件複製到你想安裝的目錄即可。當然標準的應用軟件安裝目錄爲“/Applications”。 這種安裝目錄就在軟件自己

原创 26-Qt在有多個屏幕的電腦上,在一個屏幕中居中顯示軟件窗口

參考以下代碼即可實現軟件在多屏幕電腦的其中一個屏幕的中間顯示。支持跨平臺。 MainWindow w; //獲取當前軟件所在屏幕的序號 int currentScreenIndex = a.des

原创 1.4-從“把大象裝進冰箱攏共分幾步”來理解面向對象編程思想

一、定義 面向過程 概念 面向過程是一種以過程爲中心的編程思想,它是一種基礎的順序的思維方式,面向對象方法的基礎實現中也包含面向過程思想。 特性:模塊化   流程化 優點:性能比面向對象高,因爲類調用時需要實例化,開銷比較大,比較

原创 12.1-關於軟件版本號,你所不知的設計思想

一、版本號的含義 版本號的作用 很多場合都會用到版本號,這個號碼的主要作用就是明確區別每一個發佈版本(相當於起了一個唯一的名字)。在軟件開發中版本號的具體作用如下: 用於區別開發中的內部測試版本號,方便開發人員和測試人員溝通

原创 12.3-Windows下使用NSIS打包QT應用程序安裝包,看這一篇就足夠了(包括第三方Lib庫)

一、準備需要打包的文件 準備可執行程序文件 使用Qt Creater或visual Studio+qt插件生成目標軟件的Release版本。把生成的軟件複製到一個單獨的目錄中。打開CMD命令行,切換到剛纔創建的目錄中,使用“wi

原创 1.1-做了這麼久,才知道什麼是上位機

一、定義 上位機: 上位機指可以直接發送操作指令的計算機或單片機,一般提供用戶操作交互界面並向用戶展示反饋數據。 典型設備類型:電腦,手機,平板,面板,觸摸屏 下位機: 下位機指直接與機器相連接的計算機或單片機,一般用於接收和反饋

原创 3.3-上位機與下位機通信構架源代碼編寫與使用方法說明

一、測試框架所使用的示例命令定義 本框架的示例代碼所使用的命令協議規定如下: CRC校驗碼 = [命令類型碼 + 命令碼 + 命令參數] 一個完整封包 = [包頭 + 包長 + 命令類型碼 + 命令碼 + 命令參數 + CR

原创 目錄(哈嘍,上位機)

注:本書目前在創作階段,完成的章節會以藍色超鏈接文字顯示。 一、前言 1.1-什麼是上位機,什麼是下位機? 1.2-上位機開發應該選擇哪個編程語言? 1.3-上位機開發應該選擇哪個開發平臺? 1.4-什麼是面向過程設計,什麼是面向

原创 2.6-使用C#Winform開發Tcp/Udp網絡小助手(含步驟和源碼)

一、界面設計 在做軟件之前使用“軟件界面設計工具”先設計並繪製出軟件界面,方便在寫代碼之前確認“功能需求”以及“交互流程”。 這裏使用的軟件是:“Axure RP” 二、新建工程與繪製界面 新建工程: 使用任意一個Visua

原创 2.1-關於串口上位機編程你需掌握的背景知識

一、串行通信簡介 定義:串行通信是一種使用串行數據流來傳送數據的通信協議,相區別於“並行通信”;串行通信的特點是使用一根電線完成發送數據,同時使用另一根電線完成接受數據。 上面提到“串行通信”只是一種協議,那麼對這個協議的實現分別

原创 1.2-那種編程語言纔是上位機開發中的王者

在介紹之前首先客觀的看一下現在全世界範圍內,常用編程語言的流行度。 排名 編程語言 流行度 1 Java 16.896% 2 C 15.773% 3 Python 9.704% 4 C++ 5.574%

原创 2.9-局域網查找設備的實現代碼(支持有虛擬網卡)

一、前言 前面2章分別介紹了“局域網查找設備原理”和“查找局域網設備時候,有虛擬網卡的處理辦法”。本章爲前2章所提原理的實現代碼。使用Qt開發平臺和c#winform開發平臺分別給出代碼實現。 二、使用Qt實現局域網設備查找 效

原创 4.2-軟件開發中,“思維導圖”的作用與繪製方法介紹

一、怎樣從”需求“轉變爲”軟件功能“呢? 做一個軟件,你肯定是有一個明確的想法或需求,比如你是外包公司接了一個甲方的需求,或者領導和你說要做一個做軟件,並告訴了你基本的需求。需要你根據這個“需求”設計出軟件的“具體實現功能”。這個

原创 2.7-局域網查找設備的原理

一、前言 在上位機軟件開發中離不開要連接下位機設備(如果離開了就不算是上位機軟件了)。而連接設備的方式如果做不好,非常影響使用使用者的體驗。想要做好就一個方向,那就是實現連接設備的“傻瓜化”(就像當時傻瓜相機的發明一樣)。對應到上