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

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

  • 相关阅读:
    C#调用存储过程的几个方法
    easyui 获取焦点
    easyui datagrid 添加统计行
    js 序列化form
    post 加返回判断
    启动journalnode时出现问题
    安装zookeeper集群及出现的问题
    win7旗舰版(64位)环境下oracle11g的安装方法(转)
    jdbc连接各种数据库方式列表
    在Windows平台上使用XManager 3.0连接Redhat 企业版 5和6.
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/12399281.html
Copyright © 2011-2022 走看看