用C++开发COM,包含头文件,Release编译时,link出错。

jinyt 2002-03-29 02:30:58
我用VC++的ATL写了个COM,在接口Math中只实现了一个Sin方法。
用<math.h>中的
double Sin(double i);
实现具体的功能。
-------------------------------------------------------------------
debug编译时,无任何问题。
Release编译时出现下了下列错误:

LIBCMT.lib(fpinit.obj) : error LNK2005:
LIBCMT.lib(fpinit.obj) : warning LNK4006:
LIBCMT.lib(crt0.obj) : error LNK2001:
ReleaseUMinDependency/TEST.dll : fatal error LNK1120:

若去除Sin函数,保留<math.h>头文件,则编译通过。

请问我该如何解决????
谢谢
...全文
56 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
masterz 2002-03-29
  • 打赏
  • 举报
回复
MSDN
jinyt 2002-03-29
  • 打赏
  • 举报
回复
masterz() :
非常感谢。另,请问这些信息是从哪儿找到的??
showin 2002-03-29
  • 打赏
  • 举报
回复
HRESULT Sin([in] double dIn,[out] double* pResult);
masterz 2002-03-29
  • 打赏
  • 举报
回复
Remove _ATL_MIN_CRT from the list of preprocessor defines to allow CRT startup code to be included. On the Project menu, click Settings. In the Settings For: drop-down list, choose Multiple Configurations. In the Select project configuration(s) to modify dialog box that appears, click the check boxes for all Release versions, and then click OK. On the C/C++ tab, choose the General category, then remove _ATL_MIN_CRT from the Preprocessor definitions edit box.

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧