关于注册控件报"由于应用程序配置不正确,应用程序未能启动..."错误

本人昨天用VS2005写控件,由于刚刚从2003转过来还很不习惯。 编译完成之后,将release版ocx文件注册到一台没有.net环境的机器上时报错:“由于应用程序配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题”。在网上搜索了一下,并且逐一尝试。

方法一:在Microsoft Visual Studio 8/VC/redist文件夹下复制相应的.dll文件(程序包含什么库,复制什么),但经过本人尝试,不成功,最后我把所有redist下的库都拷贝到system32下了,还是不行。不知道原因,照道理我认为此方法应该是可行的,在vs2003下我就是这么做的,而且只用拷贝3个主要库就可以了。

方法二:  在link的input里面  
  Ingore  specific  library加上  
  nafxcw.lib  
  libcpmt.lib   
   Additional   dependencies加上  
  nafxcw.lib  
  libcpmt.lib

不知道为何添加,添加之后程序编译不通过,报link错。

方法三:

项目属性-〉配置属性-〉c/c++ -〉代码生成里,换成multi-thread而不是multi-thread-dll。修改编译选项,将/MD或/MDd 改为/MT或/MTd,这样就实现了对VC运行时库的静态链接,在运行时就不再需要VC的dll了。

这里我也进行了修改,修改过后原来的程序编译报错,不能通过。

方法四:

工程-〉属性-〉配置属性-〉常规-〉MFC的使用,选择“在静态库中使用mfc”
这个方法通过了,而且据本人反复测试,只需要修改这一步生成的ocx,便可以在其它机器上注册,不过ocx的大小比原来大了许多,原来我release下文件大约50kb,之后到达200-300kb。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值