如何在Visual C ++ 2008中将MFC应用程序项目添加到Win32应用程序项目

时间:2014-02-05 15:20:17

标签: c++ visual-studio-2010 visual-c++ mfc

我一天中的大部分时间都在努力弄清楚为什么会出现这种错误,但这仍然让我感到困惑。

我在Visual C ++中创建了一个控制台应用程序并创建了一个MFC应用程序。现在,我想将它们添加到单个项目中,这样当我编译项目时,它应该打开控制台然后根据我的命令打开对话框......

我添加了afx头文件,设置了配置设置。

我想知道从哪里开始是在winmain()还是int main()? 有没有例子? 给我一些知道的链接。解决方案 提前谢谢。

1 个答案:

答案 0 :(得分:2)

创建基于MFC对话框的应用程序。项目 - 属性 - 配置属性 - 链接器 - 高级 - 入口点,设置wWinMainCRTStartup(假设项目是Unicode)。链接器 - 系统 - 选择控制台。构建应用程序现在它打开控制台窗口和它的对话框。

添加一些逻辑。例如,在我的Application类cpp文件中,我添加了以下内容:

#include "stdafx.h"
#include "testmfc.h"
#include "testmfcDlg.h"
#include <iostream>      // add
#include <string>        // add
using namespace std;     // add

...

BOOL CtestmfcApp::InitInstance()
{
     ...

     SetRegistryKey(_T("Local AppWizard-Generated Applications"));

     // ****** add this
     string s;
     cout << "Start application?" << endl;
     cin >> s;

     if ( s == "y" )
     {
         CtestmfcDlg dlg;
         m_pMainWnd = &dlg;
         dlg.DoModal();
     }
     // ****** 

    // Delete the shell manager created above.
    if (pShellManager != NULL)
    {
        delete pShellManager;
    }

    return FALSE;
}

现在运行应用程序。如果你回答&#34; y&#34;在控制台窗口中,将显示对话框。否则,应用程序立即退出。根据此示例实现您自己的逻辑。