我想學C#和開始編碼Windows的exe應用程序,但畢竟是拖我唯一的一點是,並非所有的潛在用戶安裝了.NET框架,因此將無法運行我的應用程序。C#應用程序可以在沒有.NET框架的情況下運行嗎?
有周圍沒有任何辦法嗎?
謝謝!
我想學C#和開始編碼Windows的exe應用程序,但畢竟是拖我唯一的一點是,並非所有的潛在用戶安裝了.NET框架,因此將無法運行我的應用程序。C#應用程序可以在沒有.NET框架的情況下運行嗎?
有周圍沒有任何辦法嗎?
謝謝!
號C#僅目標.NET(或類似的結構,如單聲道)。另外,Win7預裝了.NET,我相信Vista也是如此。還有大量需要.NET的MS應用程序。它幾乎無處不在Windows機器上,所以我不擔心它。
NO爲
大家簡單可以說,它已經安裝/或你所需要的運行時間。但這意味着您需要它
爲什麼用戶無法安裝.NET框架? – 2010-11-29 18:58:40
Microsoft製作一個可再發行的安裝程序,用於安裝您需要的.NET版本。它膨脹了你的安裝,但它幾乎是唯一能夠滿足你需要的方法。
這不是關於C#。這是關於你是否想開發託管或非託管應用程序。 C#是開發在.NET Framework上運行的託管應用程序的選擇。
如果你想避免它,你可以去到Visual C++(不包括.NET)開發利用Visual Studio
然而,.NET framework comes pre-installed with latest Os like Win 7 these days。
您將需要.NET運行時。但是,most of the PCs運行窗口已經擁有它。
我知道你指定的.exe文件,但如果你建立你的C#應用程序作爲一個ASP.NET應用程序,用戶將不再需要.NET Framework中,瀏覽器將是他們所需要的。
C#只是一種編程語言。從嚴格的技術角度來看,有人可以開發一個針對Windows API的C#編譯器,或者直接在這裏插入目標平臺>。當然,這需要很多努力,因爲C#被設計爲適合.NET,這意味着編譯器編寫者本質上必須重新實現.NET來提供所有C#特性。
從實際的角度來看,您只想使用C#來定位.NET或Mono。
微軟自2005年開始出貨.NET 2.0。所以,即使您的目標機器是在過去8年內購買的,它仍然應該有.NET。
另一方面,如果您要定位linux機器,那麼可以使用mono框架。你甚至不需要包含它,像ubuntu,debian等的大多數存儲庫都有在它們的存儲庫中可用於單聲道的包。你所要做的就是使你自己的軟件包依賴於Mono運行時。
是的,使用.NET Native。
而不是編譯爲中間語言,它將編譯爲本機代碼並運行靜態鏈接的.NET庫。因此,最終用戶不會有.Net運行時需求。
https://msdn.microsoft.com/en-us/vstudio/dn642499.aspx
https://msdn.microsoft.com/en-us/library/dn584397(v=vs.110).aspx
僅適用於Windows 10
沒有沒有。但是,是的。只需使用Mono。 –
Leonidas
2010-11-29 18:55:20
也許如果你想澄清一下你不認爲會有框架的人,我們可以提供一些更有建設性的解決方案,以便如何/是否使用C#爲這些用戶開發。 – bdukes 2010-11-29 19:00:38