如何将winMain封装成自己定义的CApp类啊,以下代码是一个MFC程序,其中没有winMain函数,编译器是怎样将它编译成功的呢,winMain函数又是到哪去了呢。#include <afxwin.h> class CMinApp : public CWinApp
{ public: virtual BOOL InitInstance(); public:
virtual BOOL OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo);
};class CMyFrameWnd:public CFrameWnd
{
};
BOOL CMinApp::InitInstance()
{
   CMyFrameWnd* pFrame = new CMyFrameWnd;
   pFrame->Create(0, _T("A Minimal MFC Program"));
   pFrame->ShowWindow(SW_SHOWMAXIMIZED);
   pFrame->UpdateWindow();
   this->m_pMainWnd=pFrame;
   return TRUE;
}
BOOL CMinApp::OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo)
{
return CWinApp::OnCmdMsg(nID, nCode, pExtra, pHandlerInfo);
}
CMinApp app2;

解决方案 »

  1.   

    CWinApp中包含了WinMain函数的定义
    可在VC提供的代码中找到
      

  2.   

    呵呵,《深入浅出MFC》270页——290页有详细的解释
      

  3.   

    简单的说 WinMain 在连接的库里编译器不查有无 WinMain连接器才会查
      

  4.   

    如果设计自己的CApp,该如何将winMain作为CApp的成员函数呢来将它封装呢?
      

  5.   

    将WinMain作为CApp的成员函数是不行的MFC并不是这样做的MFC的做法:extern "C" int WINAPI
    _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPTSTR lpCmdLine, int nCmdShow)
    {
    // call shared/exported WinMain
    return AfxWinMain(hInstance, hPrevInstance, lpCmdLine, nCmdShow);
    }
      

  6.   

    请问ross33123,我可以如何实现CApp类呢?
      

  7.   

    CWinApp中包含了WinMain函数的定义CWinApp youapp;//这就可以开始运行你的程序了
      

  8.   

    把winMain封装成自己定义的CApp类??
    是不可以的MFC也不会让你这样做的,你是不是想做个自已定义的程序入口啊!!!!
      

  9.   

    就是,main 是入口,你在他当中实现一个app类就行了!!
      

  10.   

    在我的示例代码中就根本没有看到winMain函数啊,这里就只有一句实现代码:
    > CMinApp app2;
    winMain是如何被封装到CMinApp中的呢?
      

  11.   

    在我的示例代码中就根本没有看到winMain函数啊,这里就只有一句实现代码:
    > CMinApp app2;
    winMain是如何被封装到CMinApp中的呢?你这里申明了App的一个全局对象,就是靠这个对象进入WinMain的
      

  12.   

    在我的示例代码中就根本没有看到winMain函数啊,这里就只有一句实现代码:
    > CMinApp app2;
    winMain是如何被封装到CMinApp中的呢?你这里申明了App的一个全局对象,就是靠这个对象进入WinMain的
      

  13.   

    再说一遍把 WinMain 封装在某个类里面是不行的WinMain 不是靠某个对象进入的MFC提供了原代码为什么不看呢?
      

  14.   

    The WinMain function is called by the system as the initial entry point for a Win32-based application.看来晚上回去要看看 深入浅出了..
    学习
      

  15.   

    MFC提供了源代码在哪儿可以找到呢?
      

  16.   

    首先安装的时候要选上然后到\Program Files\Microsoft Visual Studio\VC98\MFC\SRC找直接看可能没头绪可以在调试程序是跟踪进源代码
      

  17.   

    Tools
      Options
        Directories
          Show directories for
            Source files
      

  18.   

    单步执行下去,你会看到winmain()的
    如果你看看深入浅出MFC你就明白winmain()的原理所在
      

  19.   

    Shell -> 掉用裝載器 -> 掉用 C Startup Code -> WinMain中間好像樓了點, 哎,昨晚才看了的, 人老了.....