CWinApp::InitInstance
virtual BOOL InitInstance( );
返回值
如果初始化成功,则返回非零值;否则返回 0 。
注释
Windows 允许在同一时刻运行程序的几份拷贝。在概念上,应用程序的初始化可以被分为两个部分:一次性的应用程序初始化工作,这些在应用程序第一次运行时完成,以及实例的初始化工作,每次运行程序的一个拷贝时都会执行这些操作,包括第一次运行时。框架中 WinMain 实现调用这个函数。
重载 InitInstance 以初始化在 Windows 下运行的应用程序的每个新实例。通常,你重载 InitInstance 以构造主窗口对象并设置 CWinThread::m_pMainWnd 数据成员,使其指向这个窗口。有关重载这个成员函数的更多信息参见 “Visual C++ 程序员指南 ” 中的 “
CWinApp :应用程序类 ” 。
示例 // AppWizard 根据你选择的选项实现重载的InitInstance函数。
// 例如,对于下面由 AppWizard 创建的代码,选择了单文档界面( SDI )选项。
// 你可以在 AppWizard 创建的代码中加入其它的每个实例都执行的初始化代码。
BOOL CMyApp::InitInstance()
{
// 标准的初始化工作
// 如果你没有使用这些特性,并且希望减小最终可执行程序的大小,
// 你应当从下面的初始化例程中移去不必要的代码。
SetDialogBkColor(); // 将对话框的背景色设为灰色。
LoadStdProfileSettings(); // 载入标准的 INI 文件选项(包括 MRU )
// 注册应用程序的文档模板。文档模板
// 被用作文档、框架窗口和视图之间的联系。
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CMyDoc),
RUNTIME_CLASS(CMainFrame), // SDI 的主框架窗口
RUNTIME_CLASS(CMyView));
AddDocTemplate(pDocTemplate);
// create a new (empty) document
OnFileNew();
if (m_lpCmdLine[0] != '\0')
{
// 创建一个新(空的)文档
}
return TRUE;
}
CWinApp Overview | Class Members | Hierarchy Chart