hello.h
class CMyApp : public CWinApp {
public:
virtual BOOL InitInstance();
};
class MyMain : public CFrameWnd {
public:
MyMain();
protected:
afx_msg void OnPaint();
DECLARE_MESSAGE_MAP();
};
Hello.cpp
#include <afxwin.h>
#include "Hello.h"
CWinApp MyApp;
BOOL CMyApp::InitInstance() {
m_pMainWnd = new MyMain;
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
}
BEGIN_MESSAGE_MAP(MyMain, CFrameWnd)
ON_WM_PAINT()
END_MESSAGE_MAP()
MyMain::MyMain() {
Create(0, TEXT("Hello"), WS_OVERLAPPEDWINDOW);
}
void MyMain::OnPaint() {
CPaintDC dc(this);
RECT rect;
GetClientRect(&rect);
dc.DrawText(TEXT("Hello,MFC"), &rect,
DT_SINGLELINE | DT_CENTER | DT_VCENTER);
}
下面是F5调试的报错信息:
“Hello.exe”(Win32): 已加载“C:\Users\USER\Documents\Visual Studio 2017\Projects\Hello\Debug\Hello.exe”。已加载符号。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\ntdll.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\kernel32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已卸载“C:\Windows\syswow64\kernel32.dll”
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\kernel32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\KernelBase.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\user32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\win32u.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\mfc140ud.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\gdi32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\advapi32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\gdi32full.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\msvcrt.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\msvcp_win.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\sechost.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\ucrtbase.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\rpcrt4.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\oleaut32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\combase.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\rpcrt4.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已卸载“C:\Windows\syswow64\rpcrt4.dll”
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\sspicli.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\bcryptprimitives.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\cryptbase.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\vcruntime140d.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\ucrtbased.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\ole32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\shlwapi.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\imm32.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\uxtheme.dll”。无法查找或打开 PDB 文件。
“Hello.exe”(Win32): 已加载“C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.15063.413_none_55bc94a37c2a2854\comctl32.dll”。无法查找或打开 PDB 文件。
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\appcore.cpp(783) : AppMsg - Warning: m_pMainWnd is NULL in CWinApp::Run - quitting application.
“Hello.exe”(Win32): 已加载“C:\Windows\syswow64\kernel.appcore.dll”。无法查找或打开 PDB 文件。
线程 0xec 已退出,返回值为 0 (0x0)。
线程 0x3640 已退出,返回值为 0 (0x0)。
线程 0x3ad0 已退出,返回值为 0 (0x0)。
程序“[10088] Hello.exe”已退出,返回值为 0 (0x0)。