C++MFC库

C++MFC库

rygdsddssd God

Knowledge

BugFix

其他

问题

LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用 MSVCRTD.lib test。

详解

【CSDN】Comparator.naturalOrder | 自然排序_猫巳的博客-CSDN博客

这个问题表明你新建的是一个main类型函数(控制台程序)…

解决方法

更改 项目-属性-链接器-系统-子系统 把控制台改为窗口(WINDOWS)

字符

问题

直接使用

1
char lpszClassName[] = "窗口"

1
wc.lpszClassName = lpszClassName

报错 不能将”const char *”类型的值分配到”LPCWSTR”类型的实体

解决方法

方法1

添加

1
#include <tchar.h>

并使用

1
wc.lpszClassName = _T("窗口")
方法2

更改 项目-配置属性-高级属性-字符集多字节

MessBeep()

问题

直接使用时,无论如何修改,或使用-1(扬声器发声,排除主板无蜂鸣器原因),实例中始终为报错声

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
LRESULT CALLBACK WndProc(HWND hwnd,
UINT message,
WPARAM wParam,
LPARAM lParam){
switch (message){
case WM_LBUTTONDOWN:{
MessageBeep(0);
MessageBeep(MB_OK);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
}
return 0;
}

解决方法

微软开发文档中:
注意:在 Windows Server 2022 上,已禁用任务计划程序中的 Microsoft\Windows\Multimedia\SystemSoundsService 任务。 需要启用此任务才能使MessageBeep 正常运行。

  • 标题: C++MFC库
  • 作者: rygdsddssd
  • 创建于 : 2023-09-03 23:45:21
  • 更新于 : 2023-09-04 00:11:05
  • 链接: http://rygdsddssd.github.io/2023/09/03/C++MFC库/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
 评论
此页目录
C++MFC库