ATL开发小问题解答—nmake -f ***.mk失败

vc6.0环境下,在一个EXE宿主程序中创建一个组件时,当工程编译后,需编连注册代理存根,生成.dll文件,需要

nmake – f ***.mk(注意路径)

然后再用REGSVR32命令来注册上一步生成的.dll文件

REGSVR32 ****.dll(注意路径)

 

但由于(所建立的工程的编译器)CL /MIDL/nmake 版本不统一,会导致编连出现错误,解决方法如下:

step1—— 头文件StdAfx.h当中,做如下修改

#define STRICT

#ifndef _WIN32_WINNT

#define _WIN32_WINNT0x0500(将默认的0x0400改为0x0500,支持win2000以上版本编译器)

#endif

#define _ATL_APARTMENT_THREADED

step2—— 手动添加dllData.c文件并编译,编译时注意取消预编译头(project->settings->c/c++->cotagory: PrecompiledHesders->Not Using …),编译生成dlldata.obj文件

step3——  修改****.mk文件内容,把所有_WIN32_WINNT 改为0x0500

step4—— 执行nmake –f****.mk,可生成****.dll,再REGSVR32 ****.dll进行注册

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值