我有一個快速入門的問題。我正在使用C#(VS 2010 Express)編寫一個非常簡單的程序,並希望在辦公室部署它。我有基本的管理權限(也就是我可以安裝簡單的程序),但我有一種感覺,從編程結束,它不像複製和粘貼exe文件一樣簡單....部署程序
有什麼具體的我必須做捆綁安裝?如果所有的辦公室電腦都運行Windows XP,那麼我是否應該編寫一個特定的.NET版本?我絕對不會更新其他辦公電腦的.NET等(但我不知道他們運行什麼...)
在此先感謝!
我有一個快速入門的問題。我正在使用C#(VS 2010 Express)編寫一個非常簡單的程序,並希望在辦公室部署它。我有基本的管理權限(也就是我可以安裝簡單的程序),但我有一種感覺,從編程結束,它不像複製和粘貼exe文件一樣簡單....部署程序
有什麼具體的我必須做捆綁安裝?如果所有的辦公室電腦都運行Windows XP,那麼我是否應該編寫一個特定的.NET版本?我絕對不會更新其他辦公電腦的.NET等(但我不知道他們運行什麼...)
在此先感謝!
第一步:獲取您正在使用的框架版本。
要做到這一點:在你的項目,因爲你使用Visual Studio中,右鍵單擊每個項目的相繼這樣的:
看「目標框架」,這就是你需要你的用戶的版本使用。
如果您希望部署您的應用程序的PC沒有它,並且您的IT人員拒絕安裝您的版本,那麼您可以更改在同一窗口中使用的框架(但可能需要進行調整。 ..)
第二步:打包!
要做到這一點:在我上傳的相同圖片上,你可以看到它上面寫着「Release」。一旦你的應用程序準備好部署,從Debug切換(這是你現在應該在的狀態)然後構建它。
最後要做的就是壓縮應用程序:轉到項目的/ bin/release文件夾。
您不需要添加APPLICATION_NAMEvshost.exe或* .pdb文件。
這ziped文件是在任何機器上運行,其提供給用戶程序=)
歡迎來到世界的發展!
謝謝誒!非常感激 – keynesiancross 2011-04-20 14:58:04
您需要知道.NET Framework的安裝版本。完全沒有可能。
如果您無法讓您的IT團隊安裝最低一致的框架版本,那麼.Net應用程序可能不是正確的代碼。你有權訪問Web服務器,應用程序可以是一個Web應用程序而不是Windows應用程序?這會將您的部署問題限制在Web應用程序中。
或者,將您的應用程序打包到部署包中。我們發現ClickOnce部署是一種非常好的部署應用程序的方式,因爲用戶不需要管理員權限就可以從網絡共享運行ClickOnce應用程序 - 只要該網絡共享受信任即可。您可以在ClickOnce軟件包中包含諸如.net Framework版本之類的先決條件,但如果您這樣做,用戶將需要其計算機上的管理員權限。您也可以將應用程序部署爲MSI,並要求您的IT團隊部署到用戶。
希望有所幫助。
除非您故意引入其他依賴項,否則C#/ .NET程序應該只能運行可執行文件。
至於要使用哪個版本的.NET,這一切都取決於。最安全的選擇可能是.NET 2.0,但XP機器完全有可能達到.NET 4.0。
謝謝eh。假設它的東西像.NET 3.5,如果我添加額外的類和什麼不是程序(如LINQ to SQL,並可能引用關於mySQL),我是否需要做一些特別的事情,或者將它包括在內。可執行程序? – keynesiancross 2011-04-19 17:24:32
我建議你去看看下一兩個選項VS爲您提供的項目部署
點擊一次 http://msdn.microsoft.com/en-us/library/t71a733d(v=VS.100).aspx
,我覺得特別有用的內部網應用
另一種是經典設置項目,您只需包含項目的主要輸出,並創建一個安裝程序,將必要的dll,exe等放入其他可配置設置的文件夾中
我會推薦一個Q只是關於'安裝項目',下面不包括依賴關係,但愚蠢/相關:http://stackoverflow.com/questions/4625693/publish-program-in-visual-studio/4625822#4625822 – 2011-04-19 17:01:38