c#開發的winform程序直接拷貝到其他人的電腦一般不能正常運行,這是因為缺少.net環境和動態庫文件,這就需要我們提前對程序進行打包,這樣打包好的程序安裝到其他電腦的時候就可以正常運行了。
本文介紹如何使用vs2010打包winform桌面程序。
用vs2010打開c#項目,右鍵點擊項目解決方案名稱,在彈出的菜單框中選擇【添加】→【新建項目】,如圖所示。

-
點擊【項目】后,彈出【新建項目】對話框。選擇【其他項目類型】,點擊其左邊的三角箭頭,選擇【安裝和部署】。點擊【安裝和部署】左邊的三角箭頭,選擇【Visual Studio Installer】。然后在右邊的展開項目中,選擇【安裝項目】。默認的項目名稱為Setup1,這里我們自定義為SetupHRP。
-
新建安裝項目后,添加安裝文件。 右鍵點擊【應用程序文件夾】,選擇【添加】→【項目輸出】,如圖所示。
-
在彈出的【添加項目輸出組】對話框中,選擇【主輸出】,點擊【確定】按鈕
-
繼續右鍵點擊【應用程序文件夾】,選擇【添加】→【文件】,選擇“c:\windows\system32\msiexec.exe”文件,用於卸載程序。
-
繼續右鍵點擊【應用程序文件夾】,選擇【添加】→【文件】,添加程序需要的ICO圖標文件和dll動態庫文件
-
右建點擊主輸出項目和卸載程序msiexec.exe,分別創建快捷方式,這里主輸出項目的快捷方式重命名為孕產婦信息管理系統(HRP),卸載程序msiexec.exe快捷方式重命名為卸載HRP。
-
配置卸載程序快捷方式 。左鍵點擊安裝項目【SetupHRP】,查看項目屬性【ProductCode】值並復制,這里用於演示的項目的屬性值是{41FC0830-B98B-4BDB-959C-8CD4405CFEA3}。注意屬性值要全部復制,包括兩個大括號{}。
-
點擊【卸載HRP】快捷方式,右下角屬性欄中【Arguments】屬性,在屬性欄中首先填入“/x”后加一個空格,再將【ProductCode】的屬性值粘貼過來。
-
創建開始菜單快捷方式。右鍵點擊【用戶的“程序”菜單】,新建一個文件夾,命名為【孕產婦信息管理系統(HRP)】。將程序【孕產婦信息管理系統(HRP)】快捷方式和卸載HRP快捷方式拖動到【用戶的”程序”菜單】的【孕產婦信息管理系統(HRP)】文件夾下。
-
創建用戶桌面快捷方式。在【應用程序文件夾】重新創建一個將程序【孕產婦信息管理系統(HRP)】快捷方式,拖放到【用戶桌面】文件夾內。
-
打包.net framework 框架。首先右鍵點擊SetupHRP項目,在彈出的菜單中選擇【屬性】。
-
點擊【屬性】后,彈出【SetupHRP屬性頁】對話框,點擊【系統必備】按鈕。
-
在彈出的【系統必備】對話框中,勾選【創建用於安裝系統必備組件的安裝程序】、【Microsoft.NET Framework 4 Client Profile (x86 和 x64)】、【從與我的應用程序相同的位置下載系統必備組件】這幾個選項,點擊【確定】按鈕。若用戶的項目還需要其他系統組件,可按需勾選相應組件。
-
修改程序默認的安裝路徑。左建點擊【應用程序文件夾】,打開屬性對話框。將【DefaultLocation】屬性值中的"[Manufacturer]"去掉,否則安裝程序默認安裝目錄會是"C:\Program Files\你的用戶名\安裝解決方案名稱"。
-
最后生成安裝包。右鍵點擊SetupHRP項目,選擇【生成】,程序進行打包,若沒有錯誤提示,則程序打包成功。在解決方案文件夾下生成一個【SetupHRP】(你定義的安裝項目名稱)的文件夾,安裝文件就在此目錄下。
END
參考了:百度經驗