⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 text1.txt

📁 myie2.4版本的源代码
💻 TXT
字号:
	//add history list
	LPDISPATCH pDisp = NULL;
	IHTMLDocument2 *pHTMLDoc = NULL;
	IHTMLWindow2 *pHTMLWnd = NULL;
	IOmHistory  *pHistory = NULL;
	short p = m_nCurHistory;
	IPersistMoniker *pPM = NULL;
	IMoniker * pMok = NULL;
	try{
		//get history length
		pDisp = GetHtmlDocument();
		if( pDisp )
		{
			if (SUCCEEDED(pDisp->QueryInterface(IID_IHTMLDocument2, (void**)&pHTMLDoc)))
			{
				if(SUCCEEDED(pHTMLDoc->get_parentWindow( &pHTMLWnd )))
				{
					if(SUCCEEDED(pHTMLWnd->get_history( &pHistory )))
					{
						//
						DWORD d;
						pHTMLDoc->QueryInterface(IID_IPersistMoniker, (void**)&pPM);
						pPM->GetCurMoniker(&pMok);
						pMok->Hash(&d);
						FILE * file;
						file = fopen("c:\\moniker.txt", "a");
						fprintf(file, "%s  %d\r\n", lpszText, d);
						fclose(file);
						//
						pHistory->get_length(&p);
						if(p>0 && p!=m_nHistoryLength)
						{
							if(p>m_nHistoryLength)
								m_astrHistory.SetAtGrow(p-1, m_strLastTitle);
							else
							{
								m_astrHistory.SetAt(p-1, m_strLastTitle);
								m_astrHistory.SetSize(p);
								if(m_nHistoryLength - p >30)
									m_astrHistory.FreeExtra();
							}

							m_nCurHistory = p;
						}
						m_nHistoryLength = p;

					}
				}
			}
		}
	}
	catch(...)
	{
	}

	try{
		if(pHistory != NULL)
			pHistory->Release();
		if(pHTMLWnd != NULL)
			pHTMLWnd->Release();
		if(pHTMLDoc != NULL)
			pHTMLDoc->Release();
		if(pDisp != NULL)
			pDisp->Release();
	}
	catch(...)
	{
	}






	///


			CMyIEView * pvw = NULL;
		CChildFrame* tcf = (CChildFrame*)MDIGetActive();
		if (tcf!=NULL)
			pvw = (CMyIEView*)tcf->m_pView;
		if(pvw == NULL)
			return;

		IServiceProvider  *pSP = NULL;
		IHlinkFrame  *pHlinkFrame = NULL;
		IHlinkBrowseContext *pHlinkbc = NULL;
		LPDISPATCH pDisp = NULL;

		//try{
			pDisp = pvw->GetHtmlDocument();
			if( pDisp )
			{
				if (SUCCEEDED(pDisp->QueryInterface(IID_IServiceProvider, (void**)&pSP)))
				{	AfxMessageBox("aa");
						if (SUCCEEDED(pSP->QueryService(SID_SHlinkFrame, IID_IHlinkFrame,(void**)&pHlinkFrame)))
						{
							if (SUCCEEDED(pHlinkFrame->GetBrowseContext(&pHlinkbc)))
							{
	AfxMessageBox("bb");
								CMenu pPopup;
								IHlink *pCurHlink = NULL;
								IEnumHLITEM *pEnum = NULL;
								HLITEM *pItem = NULL;
								if(pHlinkbc==NULL)
									AfxMessageBox("dd");
								pHlinkbc->GetHlink(HLID_CURRENT, &pCurHlink);
									pHlinkbc->EnumNavigationStack(0, HLFNAMEF_DEFAULT, &pEnum);
									{	
										
										pPopup.CreatePopupMenu();
										int i=0;
										while(SUCCEEDED(pEnum->Next(1, pItem, NULL)))
										{
											AppendMenuW(pPopup.m_hMenu, MF_STRING, 0x1200 + i, pItem->pwzFriendlyName);
										}

										
										pPopup.TrackPopupMenu(TPM_LEFTALIGN | TPM_LEFTBUTTON, rect.left, rect.top + 1, AfxGetMainWnd());
										pPopup.DestroyMenu();
									}
								
								try{
									if(pCurHlink!=NULL)
										pCurHlink->Release();
									if(pEnum!=NULL)
										pEnum->Release();
								}
								catch(...)
								{
								}
							}
						}
				}
			}
	//	}catch(...)
	//	{
	//	}

		try{
			if(pHlinkbc!=NULL)
				pHlinkbc->Release();
			if(pHlinkFrame!=NULL)
				pHlinkFrame->Release();
			if(pSP!=NULL)
				pSP->Release();
			if(pDisp!=NULL)
				pDisp->Release();
		}
		catch(...)
		{
		}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -