.Net 開發出來的程式雖然輕巧,但每次都必須要求用戶安裝 .Net Framework 才能執行程式,用戶常常抱怨 .Net Framework 很大、安裝很久、版本非常多......問題。 發現 Mono 可以讓 .Net 運作於 Linux , Mac , Windows 達到跨平台運作,並且可以利用裡面的 Lib 將 .Net 程式綠色化。
首先必須先下載 Mono for Windows, Gtk#, and XSP: http://www.go-mono.com/mono-downloads/download.html
下載完畢後安裝 Mono:
在任何一個路徑建立一個資料夾,例如:\Mono
將要綠色化的 .Net 程式放在一個資料夾內 ,例如:\Mono\net_app
將Mono 安裝目錄 (C:\Program Files\Mono-2.10.6)下的 bin、etc 及 lib 資料夾複製到 \Mono
由於 .Net 程式 在未安裝 .Net Framework 的情況下,需要透過 Mono 來運作,所以建立一個 Bat 檔案,內容如下:
執行 bat 就可以運作 .Net 程式了!
發現運作程式的時候會多一個 Console,那是因為使用 Bat 的關係,如果覺得礙眼,可以利用 vb6 或 c++寫一個啟動程式即可解決此問題。
另外會發現複製過來的 bin、etc 及 lib 非常的大有272MB,我想這麼肥的 綠色版 因該不太合格吧!
所以要開始進行減肥動作,
bin 資料夾: 只需一留下 mono.exe 及 mono-2.0.dll
etc 資料夾:如果是 Console 介面才需要留下此資料夾,否則字體會變成亂碼
lib 資料夾: 依照你開發的程式,有使用那些 Lib 多餘的即可刪除,可以用 try 的方式刪除後測試是否正常慢慢消去檔案 (或反過來用增加的方式)。
https://www.ez2o.com/Blog/Post/csharp-App-to-Portable-Software-Mono
https://www.ez2o.com/Blog/Post/81