程序的進(jìn)入函數(shù)不是C/C++的進(jìn)入函數(shù)main,而是微軟的進(jìn)入函數(shù)winMain。其形式如下
int WINAPI _tWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd )
{
//用戶代碼
...............
return 0;
}
WTL是在ATL的基礎(chǔ)上發(fā)展起來的,要用到ATL中的模塊類CComModule,所以要初始化COM庫。
初始化COM庫調(diào)用CoInitialize,卸載COM庫調(diào)用CoUninitialize。程序形式如下
#include < atlbase.h >
int WINAPI _tWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd )
{
CoInitialize( NULL );//用于應(yīng)用程序
//用戶代碼
...............
CoUninitialize();
return 0;
}
WTL的應(yīng)用程序部分的代碼封裝在了CAppModule中。要定義一個(gè)CAppModule的全局變量,保證在程序啟動(dòng)前就被構(gòu)造好
CAppModule是繼承的ATL中的CComModule類。程序形式演變成如下
#include < atlbase.h >
#include < atlapp.h > //WTL要用到的
int WINAPI _tWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd )
{
CoInitialize( NULL );//用于應(yīng)用程序
_Module.Init( NULL, hInstance );//初始化一個(gè)應(yīng)用程序
//用戶代碼
...............
_Module.Term();//銷毀
CoUninitialize();
return 0;
}
posted on 2007-05-09 10:42
walkspeed 閱讀(858)
評(píng)論(0) 編輯 收藏 引用 所屬分類:
C++語言