VC++ 程 序 中 用 對 話 框 的 形 式 顯 示HTML 文 件 (轉)

worldblog發表於2007-12-04
VC++ 程 序 中 用 對 話 框 的 形 式 顯 示HTML 文 件 (轉)[@more@]

VC++ 程 序 中 用 對 話 框 的 形 式 顯 示HTML 文 件

zhou daibing ---- 在 安 裝 了4 後, 可 以 在 程 序 中 用 對 話 框 的 形 式 顯 示HTML 文 件, 如 彈 出 用HTML 寫 的 幫 助 文 件 等 等, 如 同 直 接 用 瀏 覽 器, 但 又 與 瀏 覽 器 風 格 不 同。

---- 其 實 現 如 下:

//在頭或.cpp檔案的開頭包含檔案urlmon.h,定義 ///// #include "urlmon.h" typedef HRESULT STDCALLTYPE SHOWHTMLDIALOGFN (HWND hwndParent, IMoniker *pmk, VARIANT *pvarArgIn, TCHAR* pchOptions, VARIANT *pvArgOut); ////// //函式顯示對話方塊,成功返回TRUE,失敗返回FALSE BOOL ShowHtml() { HINSTANCE hinstMSHTML = LoadLibrary (TEXT("MSHTML.DLL")); //裝載動態連線庫 WCHAR url[]=L""; //此地址名稱可直接用html檔名代替 if(hinstMSHTML)//裝載動態連線庫成功 { SHOWHTMLDIALOGFN *pfnShowHTMLDialog; pfnShowHTMLDialog = (SHOWHTMLDIALOGFN*) GetProcAddress(hinstMSHTML, TEXT ("ShowHTMLDialog")); if(pfnShowHTMLDialog) { IMoniker *moniker=NULL; // if( FAILED(CreateURLMoniker(NULL, (LPWSTR)url,&moniker ) )) { FreeLibrary(hinstMSHTML); return FALSE; } //ShowHTMLDialog函式顯示URL上的HTML檔案 pfnShowHTMLDialog(m_hWnd,moniker,NULL,NULL,NULL); if(moniker!=NULL) moniker->Release(); //顯示成功,返回TRUE return TRUE; } else //GetProcessAddress失敗 return FALSE; FreeLibrary(hinstMSHTML); } else //裝載動態連線庫失敗 return FALSE; }


 

中國世界出版服務公司版權所有


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-987834/,如需轉載,請註明出處,否則將追究法律責任。

相關文章