作者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