自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

手把手教你實(shí)現(xiàn).NET程序打包

開(kāi)發(fā) 后端
.NET程序進(jìn)行打包,主要是為了方便用戶(hù)進(jìn)行安裝。這也是廣大.NET程序員完成開(kāi)發(fā)與測(cè)試后,最后的一個(gè)步驟。

1、在這個(gè)安裝包制作的過(guò)程中,所用到的一些圖片或者文件,如:快捷鍵圖片,安裝步驟中每個(gè)圖形界面的背景圖片等都要事先在[應(yīng)用程序文件夾]中事先添加好這些圖片,即在安裝項(xiàng)目中添加這些圖片,文件好像是解決方案下debug下的所有文件都拷貝,如exe、config、rpt還有圖片等

2、安裝包中的那個(gè)Install里面的方法的執(zhí)行時(shí)間是在:所以的文件都安裝好了后再執(zhí)行其中的號(hào)碼。如客戶(hù)端安裝是在配置文件已經(jīng)裝好了后,但是其中的配置節(jié)還沒(méi)有信息,但是在代碼中賦值之后就有了,還有服務(wù)器也一樣,如數(shù)據(jù)庫(kù)也一樣,首先是拷貝到客戶(hù)端電腦上,然后再執(zhí)行install中的代碼,。獲取硬盤(pán)上的數(shù)據(jù)庫(kù)文件,然后再在數(shù)據(jù)庫(kù)中創(chuàng)建,并且引用到這個(gè)數(shù)據(jù)庫(kù)文件

***、給安裝項(xiàng)目添加必要的文件,貌似是應(yīng)用程序debug文件夾下的所有文件,還有是安裝系統(tǒng)要用的圖片文件

第二、添加系統(tǒng)必備:安裝項(xiàng)目右鍵->屬性->選擇系統(tǒng)必備,

必選上[數(shù)據(jù)訪(fǎng)問(wèn)組件]、[.net 2.0]、[windows installer 3.1]。如果應(yīng)用程序中有rpt的報(bào)表就要加上報(bào)表引擎

其中【指定系統(tǒng)必備組件的安裝位置】要選擇第二個(gè),【從與我的應(yīng)用程序相同的位置下載系統(tǒng)必備組件】

(第三)選擇應(yīng)用程序文件夾。右鍵添加項(xiàng)目輸出項(xiàng)。將應(yīng)用程序設(shè)置為主輸出

第三、添加卸載程序

打開(kāi)系統(tǒng)目錄C:\WINDOWS\system32找到文件msiexec.exe,復(fù)制到剛創(chuàng)建的安裝項(xiàng)目文件系統(tǒng)視圖的應(yīng)用程序文件夾中。

第四、創(chuàng)建【用戶(hù)的'程序'菜單(包括安裝和卸載)】

首先創(chuàng)建一個(gè)文件夾,然后在文件夾里創(chuàng)建下面兩個(gè),因?yàn)檫@個(gè)文件夾就是在開(kāi)始菜單->程序->該文件夾->安裝和卸載

1、創(chuàng)建卸載快捷鍵(先選擇程序,然后配屬性):

選擇【用戶(hù)的'程序'菜單】->在中間空白地方右鍵【創(chuàng)建快捷鍵】->選擇msiexec.exe->右鍵快捷鍵選擇屬性->修改Name和ICON->配置Arguments屬性。

配置Arguments屬性的方法是:?jiǎn)螕舭惭b項(xiàng)目,是左鍵單擊,然后找到ProductCode,復(fù)制下來(lái),然后Arguments=/x ProductCode(這里注意有個(gè)空格)。

2、創(chuàng)建安裝快捷鍵(也是先選擇程序,然后配屬性):

選擇【用戶(hù)的'程序'菜單】->在中間空白地方右鍵【創(chuàng)建快捷鍵】->選擇[應(yīng)用程序的exe文件]->右鍵快捷鍵選擇屬性->修改Name和ICON,且安裝不需要          配Arguments屬性

3、在【用戶(hù)桌面】中重復(fù)第2步的操作

第五、添加用戶(hù)操作界面

右鍵安裝項(xiàng)目->視圖->用戶(hù)界面:

安裝的過(guò)程無(wú)非就是:?jiǎn)?dòng)->進(jìn)度->結(jié)束

 給啟動(dòng)添加一個(gè)【文本框A】,并且將它上移到安裝文件夾的上面(安裝程序運(yùn)行的時(shí)候就是按著上面的順序運(yùn)行的)

 ->右鍵這個(gè)【文本框A】,填寫(xiě)其中的值

第六、添加自定義操作

為安裝解決方案添加一個(gè)類(lèi)庫(kù)項(xiàng)目,刪除Class1.cs

為類(lèi)庫(kù)項(xiàng)目添加一個(gè)【安裝程序類(lèi)】->Installer1

第七、完成將我們自定義的安裝類(lèi)接入到安裝過(guò)程:

1、將我們新建的類(lèi)庫(kù)作為主輸出添加到安裝項(xiàng)目中

選擇【應(yīng)用程序文件夾】,在中間空白部分右鍵選擇【添加項(xiàng)目輸出】將設(shè)置新建的類(lèi)庫(kù)作為主輸出

2、打開(kāi)安裝項(xiàng)目的“自定義操作視圖”然后在相應(yīng)(安裝、卸載和回滾等)的節(jié)點(diǎn)上“右鍵”添加自定義操作《選擇主輸出》

右鍵選擇【CustomActionData】

 /PassWord=[PASSWORD] /UserName=[USERNAME] /Server=[SERVER] /TargetDir="[TARGETDIR]\"

(注:/targetdir="[TARGETDIR]\"傳遞安裝目錄的路徑、[PASSWORD]等這些是我們?cè)谟脩?hù)界面上設(shè)置的文本框的屬性)

第八、再次完善新建的類(lèi)庫(kù),給其中添加方法

1、重寫(xiě)安裝函數(shù)public override void Install(System.Collections.IDictionary stateSaver)

2、重寫(xiě)卸載函數(shù)public override void Uninstall(IDictionary savedState)

3、重寫(xiě)安裝完成后函數(shù) protected override void OnAfterInstall(IDictionary savedState)

完成

附加:如果我們想在程序卸載的時(shí)候保留某些文件則需要配置這些文件的屬性如下即可:即:Permanent為true

在安裝的的過(guò)程中,在應(yīng)用程序(不是安裝解決方案)有些圖片文件或者rpt文件也要放在安裝后的文件夾中那么就這樣設(shè)置

將應(yīng)用程序中的這些文件的一個(gè)屬性【復(fù)制到輸出目錄】屬性為:

”如果較新則復(fù)制”或者“始終復(fù)制”,同時(shí)在安裝項(xiàng)目中添加winfrom項(xiàng)目的“內(nèi)容文件輸出”則在安裝包生成過(guò)程中自動(dòng)復(fù)制文件到安裝包中。

附加2、卸載方法二:(推薦)

1.先生成安裝包,記下ProductCode(選擇解決方案資源管理器根目錄如setup1,再查看屬性

標(biāo)簽,不是右鍵中的屬性),下面要用到

2.用VS.net建立一個(gè)新的控制臺(tái)程序uninst.exe文件

  1. 'power by: landlordh  
  2. 'for 2000,xp,2003  
  3. Module uninstall  
  4.     Sub Main()  
  5.         Dim myProcess As Process = New Process  
  6.         If System.Environment.OSVersion.ToString.IndexOf("NT 5") Then  
  7.             myProcess.Start("msiexec", "/X{2B65D4A9-C146-4808-AB4B-321FB077955  
  8. 9}")  '改為自己的ProductCode  
  9.         End If  
  10.         myProcess.Close()  
  11.     End Sub  
  12. End Module 

3.將控制臺(tái)程序BIN目錄的exe文件加入到打包程序文件中,在程序組創(chuàng)建uninst.exe的快捷

方式

附加3、可以再安裝類(lèi)庫(kù)項(xiàng)目中再建立一個(gè)winform窗體程序,然后在安裝類(lèi)中調(diào)用,因?yàn)槲覀冊(cè)诎惭b項(xiàng)目中添加了一個(gè)文本框A其實(shí)目的就是更改config文件,那么這里再建立一個(gè)winform項(xiàng)目的話(huà)也可以實(shí)現(xiàn)同樣的效果,而且還可以進(jìn)行更好看的界面

安裝包的版本升級(jí),每次升級(jí)一定要設(shè)置Vesion這個(gè)屬性和ProductCode這個(gè)屬性,同時(shí)也要設(shè)置卸載圖標(biāo)的那個(gè)屬性,否則當(dāng)再次安裝的時(shí)候會(huì)提示你到控制面板中刪除,然后每次升級(jí)的時(shí)候版本號(hào)要比上個(gè)版本號(hào)要高,否則的話(huà)會(huì)提示你不能安裝,這種情況只能手動(dòng)卸載掉電腦上的應(yīng)用程序然后再進(jìn)行安裝

原文鏈接:http://www.cnblogs.com/kuyijie/archive/2011/01/05/1926670.html

 【編輯推薦】

  1. .NET 3.5擴(kuò)展方法點(diǎn)評(píng):優(yōu)點(diǎn)與問(wèn)題
  2. 一個(gè).NET調(diào)用PHP Web Service的典型例子
  3. .NET 4.0的ICustomQueryInterface新特性
  4. 在.NET反應(yīng)性框架中實(shí)現(xiàn)LINQ
  5. .NET 3.5擴(kuò)展方法和Lambda表達(dá)式


 

責(zé)任編輯:彭凡 來(lái)源: 博客園
相關(guān)推薦

2023-04-26 12:46:43

DockerSpringKubernetes

2009-11-09 14:57:37

WCF上傳文件

2021-07-14 09:00:00

JavaFX開(kāi)發(fā)應(yīng)用

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2009-06-05 09:49:18

修改.NET Frammscorlib.dl

2009-11-02 15:33:53

VB.NET Data

2011-04-21 10:32:44

MySQL雙機(jī)同步

2020-05-15 08:07:33

JWT登錄單點(diǎn)

2021-03-12 10:01:24

JavaScript 前端表單驗(yàn)證

2022-01-08 20:04:20

攔截系統(tǒng)調(diào)用

2022-12-07 08:42:35

2022-07-27 08:16:22

搜索引擎Lucene

2022-03-14 14:47:21

HarmonyOS操作系統(tǒng)鴻蒙

2011-02-22 13:46:27

微軟SQL.NET

2021-12-28 08:38:26

Linux 中斷喚醒系統(tǒng)Linux 系統(tǒng)

2021-02-26 11:54:38

MyBatis 插件接口

2011-02-22 14:36:40

ASP.NETmsdnC#

2015-07-15 13:18:27

附近的人開(kāi)發(fā)

2016-05-12 11:54:39

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)