首页 新闻 会员 周边 捐助

C#中使用COM后如何部署程序

0
悬赏园豆:10 [已解决问题] 解决于 2015-01-02 10:50

大家好,请教大家一下

C#项目中使用到COM组件后要将程序打成安装包,COM组件要怎么处理。

还是就是vs2010中添加COM引用后,整个项目放到另一台电脑上用vs2010打开,原本的com引用就找不到了。把com组件放到debug目录下再添加引用也是同样的情况,有什么办法让使用了com组件的项目移到别的没有注册com的电脑上可以直接编译通过,不再去注册或是重新添加引用。

siszqsqx的主页 siszqsqx | 初学一级 | 园豆:159
提问于:2014-12-30 22:05
< >
分享
最佳答案
0

com组件需要注册的

项目安装在其他机器上需要先注册com,再打开项目。 com的位置无所谓

收获园豆:5
卒子 | 小虾三级 |园豆:588 | 2014-12-31 08:48

把COm文件放在bin/debug目录下后在其它电脑上打开项目不行吗

siszqsqx | 园豆:159 (初学一级) | 2014-12-31 09:09

在原有的项目中也是直接添加bin/debug目录下的com组件

siszqsqx | 园豆:159 (初学一级) | 2014-12-31 09:18

@siszqsqx: COM组件和asp.net生成的dll不一样,不能直接引用。需要注册到系统里面才可以。为了不和你自己的托管dll混淆最好单独放一个目录,不要在bin下面。 因为bin里面是托管代码类库的存储位置,启动时自动加载,可能会有影响。

卒子 | 园豆:588 (小虾三级) | 2014-12-31 13:39

@卒子: 谢谢了~

siszqsqx | 园豆:159 (初学一级) | 2014-12-31 14:05
其他回答(1)
0

COM组件在目标电脑上肯定要存在才可以运行的呀。首先你的安装包要包括COM组件本身,另外还要有。NET引用时生成的interop文件。在其它电脑运行之前,首先要注册这个COM组件,然后再运行。

收获园豆:5
XiaoFaye | 园豆:3087 (老鸟四级) | 2014-12-31 06:11

那把项目拿到另一台没有注册的电脑上,打开vs2010,有办法让工程中相应的com引用不出现黄色叹号,而可以直接编译吗

支持(0) 反对(0) siszqsqx | 园豆:159 (初学一级) | 2014-12-31 08:20

@siszqsqx: 

引用属性那里有个“复制到本地”的选项,可以改成“是”。 但是目标电脑一定要用原始的COM组件,不然还是运行不起来的。

支持(0) 反对(0) XiaoFaye | 园豆:3087 (老鸟四级) | 2014-12-31 08:24

@XiaoFaye: 谢谢了~

支持(0) 反对(0) siszqsqx | 园豆:159 (初学一级) | 2014-12-31 14:05
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册