我尝试了多种方法,但结果如下:
#include <stdio.h>
#include <afxwin.h>
main( int argc, const char* argv[] )
{
printf( "\nHello World\n\n" );
CDialog *dlg = new CDialog();
dlg->DoModal();
while (true) {
Sleep(1); // Sleep is a windows function
}
}当我运行此命令时,我得到以下错误:

此对话框缺少哪些内容?
我查找了几个资源,但所有资源都得到了相同的错误消息。
谁能告诉我我没看到什么?
发布于 2017-09-12 17:37:19
在控制台应用程序中使用MFC需要一些初始化。没有这个,你就会得到断言。
int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
// initialize MFC and print and error on failure
if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))
{
// TODO: change error code to suit your needs
_tprintf(_T("Fatal Error: MFC initialization failed\n"));
return 8;
}您还必须使用绑定到CDialog的资源。您可以使用适当的构造函数。或者,您可以使用类向导从CDialog派生自己的对话框。
但对我来说,创建MFC控制台应用程序并使用对话框是没有意义的。你的问题可能需要更多细节,你想做什么,以及你为什么要这样做。
在继续这种编程方式之前,您可能需要阅读一些书籍或文章。
https://stackoverflow.com/questions/46172683
复制相似问题