作者zxvc (百善孝為先)
看板C_Sharp
標題Re: [問題] 想請教如何把專案包成exe檔
時間Sat Sep 29 22:45:18 2007
※ 引述《IPJ (我要你)》之銘言:
: 標題: [問題] 想請教如何把專案包成exe檔
: 時間: Sat Sep 29 17:48:13 2007
:
: 在VS 2005 我有寫好的專案...
:
: 我要包成exe檔 在其他電腦上執行..
:
: 請問 要怎麼做呢?
:
: 謝謝
:
: --
:
※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 218.167.78.162
: → KENyroj:選 Release 然後在 bin/release 目錄下就有 exe 了吧 09/29 17:55
這編出來的.NET exe檔案不能直接複製到別台電腦執行,
會產生錯誤。必需用部署(deployment)工具部署。
原po問的是包成安裝程式嗎?那就要用到部署工具。
如果使用Visual Studio 2005 Express,有一個叫ClickOnce的部署工具,
不過我覺得非常陽春,相關資訊請爬我的文章。
除了ClickOnce,也可以使用WiX部署工具,可以把你的程式包成msi,
WiX可以在網路上找到、免費下載,只是WiX要寫XML 囧
我是用180天試用版的Visual Studio 2005 Team Suite,
它可以建立一個部署Project,用圖形介面來建立msi。
--
往生淨土咒:
南無阿彌多婆夜 哆他伽哆夜 哆地夜他 阿彌唎都婆毘 阿彌唎哆
悉耽婆毘 阿彌唎哆 毘迦蘭哆 伽彌膩 伽伽那 只多迦隸 莎婆訶
《佛說阿彌陀經》
http://web.cc.ncu.edu.tw/~93501025/amtf.doc
《金剛經》
http://web.cc.ncu.edu.tw/~93501025/jg.doc
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.204.3
1F:推 cole945:對方有灌.net framework不是就可以了嗎._.? 09/29 23:27
2F:→ cole945:.net framework會在windows update時被安裝(如果有在更新) 09/29 23:28
3F:推 saitoh:我都是直接摳debug或release目錄的執行檔 可以run沒問題 09/29 23:49
4F:→ saitoh:當然電腦上都有灌.NET Framework 09/29 23:49
5F:推 zxvc:這我就不清楚了,我之前試過幾台電腦都是有灌.NET Framework 09/30 08:21
6F:→ zxvc:但直接複製exe檔過去就不能執行。 09/30 08:21
7F:→ zxvc:一定要用ClickOnce或MSI部署。 09/30 08:22
8F:→ zxvc:我印象不知道在哪看過說要把.NET程式複製到沒裝Visual Studio 09/30 08:23
9F:→ zxvc:2005的電腦( 不是.NET Framework )必需要用部署。 09/30 08:24
※ 編輯: zxvc 來自: 140.115.204.3 (09/30 08:25)
10F:推 zxvc:這是執行的錯誤訊息: 09/30 08:44
12F:推 deuter:.NET強調就是直接複製檔案就可以了, 不用一定要msi 09/30 09:19
13F:→ deuter:你的情況可能是少了一些檔案,例如用到在GAC的dll或是其他 09/30 09:20
14F:→ deuter:COM dll 09/30 09:20
15F:推 leicheong:對方有同版本的.NET framework就可以了. 把dotnetfx.exe 09/30 09:21
16F:→ leicheong:拿去裝一下就好. 我公司這樣多電腦, 都要用ClickOnce 09/30 09:22
17F:→ leicheong:的話每一次更新豈不是麻煩死了? 09/30 09:22
18F:→ leicheong:不過如果會用到CrystalReport就一定要最少經installer 09/30 09:24
19F:→ leicheong:安裝一次, 不然沒裝那些merge module可跑不了. 09/30 09:25
20F:→ leicheong:部份其他3rd party的組件也是一樣... 09/30 09:26
21F:推 zxvc:我剛才寫了一個小程式測試的結果還是不行只複製exe。 09/30 09:32
22F:→ zxvc:我只是寫個Windows Form,一個Button按下去會顯示Hello。 09/30 09:34
23F:→ zxvc:還是因為問題是在我用C++/CLI寫,而不是C#才會有此問題? 09/30 09:35
24F:推 zxvc:成功了,我用C#的確可以只複製執行檔就可以執行。 09/30 09:39
25F:推 zxvc:原來Visual C++ 2005寫的程式還需要裝上Visual C++ 2005 09/30 09:49
26F:→ zxvc:Redistributable Package才可以執行。 09/30 09:49
27F:→ zxvc:這樣就可以只複製執行檔到別台電腦執行。 09/30 09:51
28F:→ zxvc:不然不裝Visual C++ 2005 Redistributable Package,部署工具 09/30 09:51
29F:→ zxvc:也會處理相依性的問題。 09/30 09:52
30F:→ zxvc:真相大白了,謝謝大家。 09/30 09:52
31F:推 horngsh:VC++有自己的Run time, VB6也有自己的Run Time 10/01 07:11
32F:推 leicheong:不過C++可以link成static... :P 10/01 19:29