zoukankan      html  css  js  c++  java
  • 又让厂公着半天急----一例自定义MFC程序编译时LNK2019错误

    实验环境win10/win2012 vs2019 c++

    问题背景:

    MFC是微软提供的图形界面编程框架,诱人的美丽,但是如果完全按照MFC向导建立程序虽然方便,但是会包含很多文件,应用实际又不一定用得着。

    所以,我从空项目建立了一个MFC程序,自定义了一个CFrameWnd子类,但是一运行就报错了。不是代码的问题,而是vs环境配置的问题

    首先,错误的详情记不得了(报错提示看着就添堵,给关了),但这个错误包含几个要素:

    1.是LNK2019错误

    2.跟msvcrtd.dll有关(千万别按照网上提供的下载dll,注册的馊主意来,也没用)

    3.错误提示,好像是说,你的入口函数有问题  xxxx_mainxxxxx的

    这个错误引发的原因大概可以这样描述,由于是个空项目,IDE无从得知,你写了一个windows程序还是控制台程序,所以默认按照控制台程序,寻找项目的入口点,而MFC程序没有明显的main入口,都是定义好类,就等操作系统把针对窗口的操作消息放入消息队列,然后取之,处理,所以大水冲了龙王庙,一家人不认一家人。所以要如下配置

    • 选择共享DLL中使用MFC,字符集建议选择Unicode字符集

    • 预处理器新增 _WINDOWS

    • 链接器----系统 ---子系统:选择窗口,同理,如果你写的是控制台程序,则选择控制台

  • 相关阅读:
    借鉴文章记录
    三方框架
    常用第三方库记录
    ios block 类型
    ios runtime部分事例方法说明
    ios url网址相关问题解说
    mysql迁移数据库函数中的坑
    mysql的事务隔离级别
    MySQL数据库的默认隔离级别为什么是可重复读
    实时查看mysql连接数
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/12399281.html
Copyright © 2011-2022 走看看