【发布时间】:2017-03-29 08:48:59
【问题描述】:
我正在尝试使用 CFrameWindow 创建窗口,我使用了“使用 Visual C++ 进行应用图论模拟”中的代码,但它没有入口点,所以它不起作用。所以我尽可能地简化了它,现在当应用程序在发布模式下启动时,窗口不会出现,在调试模式下它会抛出断言失败的错误。我使用 MSVS Visual C++ -> 常规 -> 空项目,将“使用 MFC”设置为在共享 DLL 中使用 MFC。
代码如下:
#include <afxwin.h>
class MyWnd : public CFrameWnd
{
public:
MyWnd() { Create(0, "MyWnd"); }
~MyWnd() { }
};
class MyApp : public CWinApp
{
public:
virtual BOOL InitInstance()
{
m_pMainWnd = new MyWnd;
m_pMainWnd->ShowWindow(m_nCmdShow);
return TRUE;
}
};
int CALLBACK WinMain (_In_ HINSTANCE hInstance, _In_ HINSTANCE hPrevInstance, _In_ LPSTR lpCmdLine, _In_ int nCmdShow)
{
MyApp myApp;
myApp.InitInstance();
myApp.Run();
}
编辑:更新为调用 MyApp.Run(),但它仍然不显示任何内容,还检查了子系统,未选择任何内容,尝试了控制台、Windows、Native,仅使用 Windows 编译但没有帮助。
【问题讨论】:
-
您使用哪种子系统类型(请参阅 project-proerties -> 链接器 -> 系统 -> 子系统)。
-
子系统:没有选择,尝试了控制台、Windows、Native,仅使用 Windows 编译但没有帮助。
标签: c++ visual-c++ mfc