首页
/
每日頭條
/
科技
/
c程序編譯整個過程
c程序編譯整個過程
更新时间:2026-01-02 18:31:12

當我們滿心歡喜的想要和其他人分享自己制作的上位機時,是不是會遇到一些比較尴尬的事情,比如某些DLL庫缺失,或者.NET版本太低不支持,或者某些文件不能發送,等各種各種的問題。

那麼将你的上位機軟件直接打包成安裝文件,這些尴尬就可以很好地避免,而且給客戶使用起來也會很方便。

本文主要介紹用Microsoft Visual Studio Installer Projects軟件制作安裝包。首先是該軟件的安裝,Microsoft Visual Studio Installer Projects屬于Visual Studio的擴展安裝包,因此在Visual Studio裡面可以很方便的安裝該擴展包。

c程序編譯整個過程(上位機程序打包安裝文件)1

c程序編譯整個過程(上位機程序打包安裝文件)2

在工具->擴展和更新裡面,找到Visual Studio Marketplace,然後搜索軟件名字,下載安裝,然後重啟Visual Studio即可使用。

在你之前的上位機項目中,右擊->添加->新建項目,選擇其他類型項目->Visual Studio Installer->Setup Project.

c程序編譯整個過程(上位機程序打包安裝文件)3

然後右擊安裝包項目,選擇View->文件系統->Application Folder。在右邊文件列表的空白處右擊添加文件,引用的dll庫文件通常會自己自動添加。如下圖所示

c程序編譯整個過程(上位機程序打包安裝文件)4

将文件添加之後,将上位機程序的輸出也同樣添加進去,操作步驟如下:

c程序編譯整個過程(上位機程序打包安裝文件)5

然後右擊Application Folder裡面的主輸出,創建快捷方式,之後将快捷方式移動到User's Desktop,即在用戶桌面上創建快捷方式。

然後設置安裝包項目的屬性。

c程序編譯整個過程(上位機程序打包安裝文件)6

安裝包屬性的具體解釋如下:

(非常重要)

1.Product Code:每個版本或者每個安裝包特有的ID

2.Upgrade Code:版本升級用到的ID,同一Upgrade Code才會升級

3.DetectNewerInstalledVersion:True,隻能升級,不能降級

4.RemovePreviousVersion:去掉之前版本,即覆蓋安裝

5.Version:安裝包版本。

(一般重要)

1.Author:作者或者公司名

2.Maufacturer以及MaufacturerUrl:公司名以及網址

3.Target Platform:運行平台。

最後,進行編譯即可生成兩個文件,一個Setup文件,一個msi文件。最好點擊Setup文件,這樣會對上位機環境進行檢測。

如果想要支持新版本直接覆蓋舊版本要怎麼辦?

首先,安裝包裡面的屬性配置為:Product Code各個版本不同,Upgrade Code各個版本必須保持一緻,DetectNewerInstalledVersion設置為True,RemovePreviousVersion設置為True,Version新版本要比舊版本數值大。

另外,需要對上位機程序的輸出版本進行升級,需要在你當前解決方案下的->Properties->Assembleinfo.cs裡面的[assembly:AssemblyVersion(“1.0.0.0”)][assembly: AssemblyFileVersion(“1.0.0.0”)]進行修改,這兩個屬性一般在Assembleinfo.cs的最下面。這樣才能做到自動更新,如下圖所示:

c程序編譯整個過程(上位機程序打包安裝文件)7

最後,其他文件,修改時間不一緻,安裝包就可以自動替換,不用專門修改。

這樣,就可以實現安裝包的版本覆蓋更新。另外,需要說明的是,安裝包項目還可以做卸載以及注冊表的更新,這裡不做過多叙述。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
空調原理與維修
空調原理與維修
當代的中國基,本上每家每戶都已經有了空調這個小家電,在祖國的領導下,人們都走進了小康,都過上了幸福的生活。但是當你在享受空調帶給你的安逸和涼爽的時候,你是否思考過空調的工作原理呢?當空調用了一段時間以後,出了一點故障,你知道該怎麼樣來維修嗎?如果你以前才能夠來沒有關注過關于空調的工作原理與維修等方面...
2026-01-02
淨水器的使用方法-淨水器的原理
淨水器的使用方法-淨水器的原理
淨水器的使用方法-淨水器的原理淨水器的原理大部分淨水器是采用阻篩過濾原理漸進式結構方式,由多級濾芯首尾串接而成,濾芯精密度由低到高依次排列,以實現多級濾芯分攤截留污物,從而減少濾芯堵塞和人工排污、拆洗的次數以及延長更換濾芯的周期。還有一種新的設計思路是應用分質流通原理自潔式結構方式,它的設計思想不再...
2026-01-02
洗碗機的清潔保養-洗碗機的使用方法
洗碗機的清潔保養-洗碗機的使用方法
洗碗機通過耗電量的不同或者及内存放的有效容積不同可以有不同的規格。現在的許多洗碗機越來越發展,功能越來越齊全,因此,在選購時可以根據自身的需要選擇适合的規格和所需要的功能。洗碗機的清潔保養-洗碗機的使用方法洗碗機的清潔保養據統計,洗碗機每台的售價都在千元以上,做好清潔保養工作是延續洗碗機使用壽命的最...
2026-01-02
中頻治療儀的功效與副作用
中頻治療儀的功效與副作用
中頻治療儀的功效與副作用中頻治療儀原理中頻治療儀是模拟傳統的中醫針灸,用CPU控制的脈沖電流針對穴道起到疏導血管、神經,達到順暢傳達的功效。在一定頻率範圍内,人體組織的阻抗與頻率成反比,即人體組織對中頻電流的阻抗要比對低頻電流的阻抗低,因此中頻電流比低頻電流能夠到達組織更深的部位,而且皮膚感覺舒适。...
2026-01-02
家庭用太陽能熱水器
家庭用太陽能熱水器
随着不可再生能源的減少,現在的人們越來越偏向于使用太陽能,光能,水能等可再生能源,而且這些可再生能源無污染能給人類重複再使用,所以對這些能量的研究與開發利用也越來越多,在這些究竟之中,我們不能不提到的太陽能,在衆多的太陽能研究之中,太陽能熱水器的使用無疑最早的,比較貼近我們生活的一個膛家庭用具。太陽...
2026-01-02
Copyright 2023-2026 - www.tftnews.com All Rights Reserved