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

📄 myie.cpp

📁 myie2.4版本的源代码
💻 CPP
📖 第 1 页 / 共 4 页
字号:
				token = strtok( tmp, seps);
				while( token != NULL )
				{
					  /* While there are tokens in "string" */
					  ((CMainFrame*)m_pMainWnd)->NewChildWindow(1, 2, token);
					  /* Get next token: */
					  token = strtok( NULL, seps );
				}
				delete[] tmp;

			}
		}
		else if(bGoHome == 3)
		{
			pMainFrame->OpenAllFavs(((CMainFrame*)m_pMainWnd)->m_strStartFavFolder);
		}
		else if(bGoHome == 4)
		{
			pMainFrame->OpenAllFavs(((CMainFrame*)m_pMainWnd)->m_strStartFavFolder, TRUE);
		}
		else if(bGoHome == 5)
		{
			//start group
			pMainFrame->OpenGroup(pMainFrame->m_strStartGroup);
		}
		else
			pMainFrame->NewChildWindow(1, nOpenType, strURL);
	}
	
	//full screen
	BOOL bFullScreenMode = GetProfileInt("Settings", "FullScreen", 0);
	if(bFullScreenMode)
	{
		((CMainFrame*)m_pMainWnd)->FullScreenModeOn();
	}
	
	//go my homepage when first run 
	if(bFirst)
	{
		CString strURL = "http://changyou.icqcn.com/";
		((CMainFrame*)m_pMainWnd)->NewChildWindow(1,2,strURL);
	}


	WriteProfileInt("Settings", "Running", 1);

	pMainFrame->UpdateWindow();


	return TRUE;
}


/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About

class CAboutDlg : public CDialog
{
public:
	CAboutDlg();

// Dialog Data
	//{{AFX_DATA(CAboutDlg)
	enum { IDD = IDD_ABOUTBOX };
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CAboutDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//{{AFX_MSG(CAboutDlg)
		// No message handlers
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
	//{{AFX_DATA_INIT(CAboutDlg)
	//}}AFX_DATA_INIT
}

void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAboutDlg)
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
	//{{AFX_MSG_MAP(CAboutDlg)
		// No message handlers
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

// App command to run the dialog
void CMyIEApp::OnAppAbout()
{
	CAboutDlg aboutDlg;
	aboutDlg.DoModal();
}

/////////////////////////////////////////////////////////////////////////////
// CMyIEApp message handlers


/*CDocument* CMyIEApp::OpenDocumentFile(LPCTSTR lpszFileName) 
{
	// TODO: Add your specialized code here and/or call the base class
	//load file to the empty doc which is opend when initializing.
//	ASSERT(m_pDocManager != NULL);
	POSITION pos=m_pDocManager->GetFirstDocTemplatePosition();
	if(pos!=NULL)
	{
		CDocTemplate* pTemplate = m_pDocManager->GetNextDocTemplate(pos);
		POSITION pos2 = pTemplate->GetFirstDocPosition();
		if(pos2!=NULL)
		{
			CMyIEDoc * pDoc = (CMyIEDoc*)pTemplate->GetNextDoc(pos2);
			if(pDoc!=NULL && pDoc->m_bEmpty)
			{
				pDoc->m_bEmpty=false;
				POSITION dpos = pDoc->GetFirstViewPosition();
				CFixedHtmlView* pv =((CFixedHtmlView*)(pDoc->GetNextView(dpos)));
				pv->Navigate2(lpszFileName,NULL,NULL);
				pDoc->SetPathName(lpszFileName);
				
				//bring the MDI child window to the top, 
				//we should bring the frame to top, not the view itself.
				//a view has no title bar and border.
				pv->GetParentFrame()->BringWindowToTop(); 
				return pDoc;
			}
		}
	}
	return CWinApp::OpenDocumentFile(lpszFileName);
}*/

int CMyIEApp::ExitInstance() 
{
	// TODO: Add your specialized code here and/or call the base class
	try{
	//2.2
	WSACleanup();

	if(m_pDispOM)
		delete m_pDispOM;

	CoUninitialize();

	//erase running flag
	WriteProfileInt("Settings", "Running", 0);

	//delete agent
	HKEY            hKey;
//	TCHAR           sz[MAX_PATH];

	if(RegOpenKey(HKEY_LOCAL_MACHINE, _T("Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\User Agent\\Post Platform"), &hKey) != ERROR_SUCCESS)
	{
		TRACE0("Main setting not found\n");
	}
	else
	{
		RegDeleteValue(hKey, _T(MyIEVer));
		RegCloseKey(hKey);
	}

//	CloseHandle(m_hMutex);
	}
	catch(...)
	{
	}

	try{
	return CWinApp::ExitInstance();
	}catch(...)
	{
		return -1;
	}
}


void CMyIEApp::LoadConfg()
{
	//get pop list
	UINT len;
	char *tmp = NULL;
	BOOL r;
	CString pop = GetProfileString("Popups", "popup1", NULL);
	if(pop == "" || pop.IsEmpty())
	{
		r = GetProfileBinary("Settings","Popups", (LPBYTE*)(&tmp), &len);
		if(r)
		{
			//load pop list
			char *token;
			char seps[] = "\n";
			token = strtok( tmp, seps);
			while( token != NULL )
			{
				  /* While there are tokens in "string" */
				  ((CMainFrame*)m_pMainWnd)->m_astrPopup.AddTail(token);
				  /* Get next token: */
				  token = strtok( NULL, seps );
			}
			delete[] tmp;

		}
	}
	else
	{
		//load new one
		char Keyname[12] = "popup";
		int i=1;
		while(pop != "" && !pop.IsEmpty())
		{
			((CMainFrame*)m_pMainWnd)->m_astrPopup.AddTail(pop);
			i++;
			itoa(i, Keyname+5, 10);
			pop = GetProfileString("Popups", Keyname, NULL);
		}
	}

	//enable popup
	EnablePopupFilter = GetProfileInt("Settings", "EnablePop", 1);
	if(EnablePopupFilter)
		((CMainFrame*)m_pMainWnd)->GetMenu()->CheckMenuItem(ID_TOOLS_EABLEPOPUPFILTER,MF_CHECKED);
	else
		((CMainFrame*)m_pMainWnd)->GetMenu()->CheckMenuItem(ID_TOOLS_EABLEPOPUPFILTER,MF_UNCHECKED);
	EnableDupFilter = GetProfileInt("Settings", "EnableDupFilter", 0);
	EnableAutoFilter = GetProfileInt("Settings", "EnableAutoFilter", 1);


	//window pos
	int top = GetProfileInt("Settings", "top", 100);
	int left = GetProfileInt("Settings", "left", 100);
	int width = GetProfileInt("Settings", "width", 500);
	int height = GetProfileInt("Settings", "height", 400);
	if( width!=0 && top<1000 && top>0)
		m_pMainWnd->SetWindowPos(&CWnd::wndTop, left, top, width, height,SWP_HIDEWINDOW);   
	if( GetProfileInt("Settings", "Zoomed", 0))
		m_nCmdShow = SW_SHOWMAXIMIZED;
	

	((CMainFrame*)m_pMainWnd)->m_nTitleLen = GetProfileInt("Settings", "TabSize", 11);

	//======================================Proxy==========================================
	//load defaul proxy
	((CMainFrame*)m_pMainWnd)->m_strCurProxy = GetProfileString("Settings", "DefaultProxy", NULL);
	((CMainFrame*)m_pMainWnd)->m_strCurProxyName = ((CMainFrame*)m_pMainWnd)->GetProxyName(((CMainFrame*)m_pMainWnd)->m_strCurProxy);
	//load proxy by pass
	((CMainFrame*)m_pMainWnd)->m_strProxyByPass = GetProfileString("Settings", "ProxyByPass", "<local>");

	//load proxy list number
	((CMainFrame*)m_pMainWnd)->m_nCurProxyList = GetProfileInt("Settings", "ProxyList", 1);

	((CMainFrame*)m_pMainWnd)->m_aProxyCategories.LoadProxies();

	//load defaul web proxy
	((CMainFrame*)m_pMainWnd)->m_strDefaultWebProxy = GetProfileString("Settings", "DefaultWebProxy", NULL);
/*	if(((CMainFrame*)m_pMainWnd)->m_strDefaultWebProxy.IsEmpty())
	{
		((CMainFrame*)m_pMainWnd)->m_strDefaultWebProxy.LoadString(IDS_DEFAULT_WEB_PROXY);
		((CMainFrame*)m_pMainWnd)->m_astrWebProxy.AddTail(((CMainFrame*)m_pMainWnd)->m_strDefaultWebProxy);
	    ((CMainFrame*)m_pMainWnd)->m_aWebProxySpeed.AddTail(3);
	}*/

	//load proxy servers
/*2.3	CString wp = GetProfileString("Proxy", "p1", NULL);
	if(wp == "" || wp.IsEmpty())
	{
		tmp = NULL;
		r = GetProfileBinary("Settings","Proxy", (LPBYTE*)(&tmp), &len);
		if(r)
		{
			//load pop list
			char *token;
			char seps[] = "\n";
			token = strtok( tmp, seps);
			while( token != NULL )
			{
				  /* While there are tokens in "string" * /
				  ((CMainFrame*)m_pMainWnd)->m_astrProxy.AddTail(token);
				  ((CMainFrame*)m_pMainWnd)->m_astrProxyName.AddTail(token);
				  /* Get next token: * /
				  token = strtok( NULL, seps );
			}
			delete[] tmp;

		}
*/
	//	int pn = ((CMainFrame*)m_pMainWnd)->m_astrProxy.GetCount();
		//load proxy user name
	/*	tmp = NULL; 
		r = GetProfileBinary("Settings","ProxyUser", (LPBYTE*)(&tmp), &len);
		if(r)
		{
			//load pop list
			char *token;
			char seps[] = "\n";
			token = strtok( tmp, seps);
			while( token != NULL )
			{
				  // While there are tokens in "string" 
				  ((CMainFrame*)m_pMainWnd)->m_astrProxyUser.AddTail(token);
				  // Get next token:
				  token = strtok( NULL, seps );
			}
			delete[] tmp;

		}

		//load proxy password
		tmp = NULL;
		r = GetProfileBinary("Settings","ProxyPwd", (LPBYTE*)(&tmp), &len);
		if(r)
		{
			//load pop list
			char *token;
			char seps[] = "\n";
			token = strtok( tmp, seps);
			while( token != NULL )
			{
				  // While there are tokens in "string" 
				  ((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.AddTail(token);
				  // Get next token: 
				  token = strtok( NULL, seps );
			}
			delete[] tmp;

		}
	*/
		//load proxy speed
/*2.3		tmp = NULL;
		r = GetProfileBinary("Settings","ProxySP", (LPBYTE*)(&tmp), &len);
		if(r)
		{
			//load pop list
			for( UINT i=0;i<len;i++ )
			{
				  ((CMainFrame*)m_pMainWnd)->m_aProxySpeed.AddTail(tmp[i]);
			}
			delete[] tmp;

		}
	}
	else
	{
		//new format
		char Keyname1[6] = "p", Keyname2[7] = "ps", Keyname3[7] = "pn";
		int sp, i=1;
		sp = GetProfileInt("Proxy", "ps1", 3);
		CString wpn = GetProfileString("Proxy", "pn1", wp);
		while(wp != "" && !wp.IsEmpty())
		{
			((CMainFrame*)m_pMainWnd)->m_astrProxy.AddTail(wp);
			((CMainFrame*)m_pMainWnd)->m_aProxySpeed.AddTail(sp);
			((CMainFrame*)m_pMainWnd)->m_astrProxyName.AddTail(wpn);
			i++;
			itoa(i, Keyname1+1, 10);
			itoa(i, Keyname2+2, 10);
			itoa(i, Keyname3+2, 10);
			wp = GetProfileString("Proxy", Keyname1, NULL);
			sp = GetProfileInt("Proxy", Keyname2, 3);
			wpn = GetProfileString("Proxy", Keyname3, wp);
		}
	}
*/
	//adjust number of proxy list
/*	if(pn!=((CMainFrame*)m_pMainWnd)->m_astrProxyUser.GetCount())
	{
		((CMainFrame*)m_pMainWnd)->m_astrProxyUser.RemoveAll();
		for(int i=0; i<pn;i++)
			((CMainFrame*)m_pMainWnd)->m_astrProxyUser.AddHead("");
	}
	if(pn!=((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.GetCount())
	{
		((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.RemoveAll();
		for(int i=0; i<pn;i++)
			((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.AddHead("");
	}*/
/*v2.0	delete
	if(pn>((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetCount())
	{
		((CMainFrame*)m_pMainWnd)->m_aProxySpeed.RemoveAll();
		for(int i=0; i<pn;i++)
			((CMainFrame*)m_pMainWnd)->m_aProxySpeed.AddHead(3);
	}
	pn=((CMainFrame*)m_pMainWnd)->m_astrWebProxy.GetCount();
	if(pn>((CMainFrame*)m_pMainWnd)->m_aWebProxySpeed.GetCount())
	{
		((CMainFrame*)m_pMainWnd)->m_aWebProxySpeed.RemoveAll();
		for(int i=0; i<pn;i++)
			((CMainFrame*)m_pMainWnd)->m_aWebProxySpeed.AddHead(3);
	}
*/

//=================================================================================================


	//active new window
	((CMainFrame*)m_pMainWnd)->m_bActiveNewWindow = GetProfileInt("Settings", "ActiveNew", 0);
	//always new window
	bAddressInNewWindow = GetProfileInt("Settings", "AddressInNewWindow", 0);
	bLinkInNewWindow = GetProfileInt("Settings", "LinkInNewWindow", 0);
	bFavInNewWindow = GetProfileInt("Settings", "FavInNewWindow", TRUE);
	bHisInNewWindow = GetProfileInt("Settings", "HisInNewWindow", TRUE);

	//the start favorite folder
	((CMainFrame*)m_pMainWnd)->m_strStartFavFolder = GetProfileString("Settings", "StartFolder", NULL);

	//insert to next tab
	((CMainFrame*)m_pMainWnd)->m_bNextTab = GetProfileInt("Settings", "NextTab", 1);
	

	//default path
	m_strDefaultDir = GetProfileString("Settings", "DefaultDir");
	if(!m_strDefaultDir.IsEmpty() && m_strDefaultDir != "")
		SetCurrentDirectory(m_strDefaultDir);

⌨️ 快捷键说明

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