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