✔ 最佳答案
這就是用 interpreted language 的缺點(也是好處),就是你的目的機器一定要裝有 runtime… 沒記錯的話,VB也要有VB Runtime,不然 VB的程式跑不起來,而 Java 也是,要裝 Java Console... 但是理論上,你同樣的 .exe 檔,你可以拿到另外一個也有裝 .Net Framework 2.0 的平台,不用重新 compile,他也一定可以跑…
而且 runtime 只需要安裝一次,以後其他 .Net 程式都可以跑 (C# 寫的也是 .Net)…
我只寫過 C#,VS2005裡面有一種 Project 叫 Deployment Project,你選用那一個,可以作一個 setup 檔,把你的 exe 檔跟其他的 dll 檔包裝起來… 只要在目的機器上跑你的 setup 檔,它會自動偵測機器上有沒有裝 .Net Framework 2.0,沒有的話,會自動先安裝 .Net Framework 2.0…
Deployment Project 裡還可以設定你的 project 裡可能有用到的其他的 Pre-requisite,例:Microsoft Installer (MSI),或 Database Access (DAO),等的東西…
2006-08-19 09:55:21 補充:
事實上在 linux 上安裝程式也是會有這些問題啦… 裝個 PHP 要先確定 Apache / Mysql 等的… 有時候裝了個小程式,還告訴我說 missing 一些程式庫… 只要稍微有一點複雜度的程式,不管是那個平台,都會有這個問題… (你用 MFC 寫 C++ 程式,也是要裝 MFC Runtime 啊,不是說用 C++ 就一定沒有)