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

📄 myie.cpp

📁 myie的源程序是用VC++写自已可以扩搌使用
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	}
	WriteProfileBinary("Settings","WebProxySP", tmp, cn);
	if(tmp!=NULL)
		delete tmp;
*/
	i = 1;
	WriteProfileString("WebProxy", NULL, "");
	char Keyname1[10]="wp", Keyname2[11]="wps";
	pos = ((CMainFrame*)m_pMainWnd)->m_astrWebProxy.GetHeadPosition();
	while(pos!=NULL)
	{
		itoa(i, Keyname1+2, 10);
		WriteProfileString("WebProxy", Keyname1, ((CMainFrame*)m_pMainWnd)->m_astrWebProxy.GetAt(pos));
		((CMainFrame*)m_pMainWnd)->m_astrWebProxy.GetNext(pos);
		i++;
	}
	i = 1;
	pos = ((CMainFrame*)m_pMainWnd)->m_aWebProxySpeed.GetHeadPosition();
	while(pos!=NULL)
	{
		itoa(i, Keyname2+3, 10);
		WriteProfileInt("WebProxy", Keyname2, ((CMainFrame*)m_pMainWnd)->m_aWebProxySpeed.GetAt(pos));
		((CMainFrame*)m_pMainWnd)->m_aWebProxySpeed.GetNext(pos);
		i++;
	}

	//save defaul web proxy
	WriteProfileString("Settings","DefaultWebProxy", ((CMainFrame*)m_pMainWnd)->m_strDefaultWebProxy);


//get current setting
/*2.0
	CString strCurProxy, bypass, user, pwd;
	if(((CMainFrame*)m_pMainWnd)->GetProxySetting(strCurProxy, bypass, user, pwd))
	{	//save the curproxy
		if(!((CMainFrame*)m_pMainWnd)->m_astrProxy.Find(strCurProxy))
		{
			((CMainFrame*)m_pMainWnd)->m_astrProxy.AddHead(strCurProxy);
			((CMainFrame*)m_pMainWnd)->m_aProxySpeed.AddHead(3);
//			((CMainFrame*)m_pMainWnd)->m_astrProxyUser.AddHead(user);
//			((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.AddHead(pwd);
		}
	}

*/
	//save proxy servers
/*	allpopups.Empty();
	pos = ((CMainFrame*)m_pMainWnd)->m_astrProxy.GetHeadPosition();
	i=0;
	while(pos!=NULL)
	{
		allpopups += ((CMainFrame*)m_pMainWnd)->m_astrProxy.GetAt(pos);
		allpopups += "\n";
		((CMainFrame*)m_pMainWnd)->m_astrProxy.GetNext(pos);
	}
	WriteProfileBinary("Settings","Proxy", (LPBYTE)allpopups.GetBuffer(1), allpopups.GetLength()+1);
*/
	//save proxy users
/*	allpopups.Empty();
	pos = ((CMainFrame*)m_pMainWnd)->m_astrProxyUser.GetHeadPosition();
	i=0;
	while(pos!=NULL)
	{
		allpopups += ((CMainFrame*)m_pMainWnd)->m_astrProxyUser.GetAt(pos);
		allpopups += "\n";
		((CMainFrame*)m_pMainWnd)->m_astrProxyUser.GetNext(pos);
	}
	WriteProfileBinary("Settings","ProxyUser", (LPBYTE)allpopups.GetBuffer(1), allpopups.GetLength()+1);

	//save proxy servers password
	allpopups.Empty();
	pos = ((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.GetHeadPosition();
	i=0;
	while(pos!=NULL)
	{
		allpopups += ((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.GetAt(pos);
		allpopups += "\n";
		((CMainFrame*)m_pMainWnd)->m_astrProxyPwd.GetNext(pos);
	}
	WriteProfileBinary("Settings","ProxyPwd", (LPBYTE)allpopups.GetBuffer(1), allpopups.GetLength()+1);
*/
	//save proxy speed
/*	tmp = NULL;
	pos = ((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetHeadPosition();
	i=0;
	cn = ((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetCount();
	if(cn>0)
		tmp = new BYTE[cn];
	while(pos!=NULL)
	{
		tmp[i] = ((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetAt(pos);
		((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetNext(pos);
		i++;
	}
	WriteProfileBinary("Settings","ProxySP", tmp, cn);
	if(tmp!=NULL)
		delete tmp;
*/
	i = 1;
	WriteProfileString("Proxy", NULL, "");
	Keyname1[0]='p'; Keyname2[0]='p'; Keyname2[1]='s';
	pos = ((CMainFrame*)m_pMainWnd)->m_astrProxy.GetHeadPosition();
	while(pos!=NULL)
	{
		itoa(i, Keyname1+1, 10);
		WriteProfileString("Proxy", Keyname1, ((CMainFrame*)m_pMainWnd)->m_astrProxy.GetAt(pos));
		((CMainFrame*)m_pMainWnd)->m_astrProxy.GetNext(pos);
		i++;
	}
	i = 1;
	pos = ((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetHeadPosition();
	while(pos!=NULL)
	{
		itoa(i, Keyname2+2, 10);
		WriteProfileInt("Proxy", Keyname2, ((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetAt(pos));
		((CMainFrame*)m_pMainWnd)->m_aProxySpeed.GetNext(pos);
		i++;
	}
	//save defaul  proxy
	WriteProfileString("Settings","DefaultProxy", ((CMainFrame*)m_pMainWnd)->m_strCurProxy);

	//tab pos
	WriteProfileInt("Settings", "TabPos", m_bTopTab);

	//save utils names 
/*	allpopups.Empty();
	pos = ((CMainFrame*)m_pMainWnd)->m_lstrUtilNames.GetHeadPosition();
	i=0;
	while(pos!=NULL)
	{
		allpopups += ((CMainFrame*)m_pMainWnd)->m_lstrUtilNames.GetAt(pos);
		allpopups += "\n";
		((CMainFrame*)m_pMainWnd)->m_lstrUtilNames.GetNext(pos);
	}
	WriteProfileBinary("ExUtils","names", (LPBYTE)allpopups.GetBuffer(1), allpopups.GetLength()+1);
	//save utils commands
	allpopups.Empty();
	pos = ((CMainFrame*)m_pMainWnd)->m_lstrUtilCmds.GetHeadPosition();
	i=0;
	while(pos!=NULL)
	{
		allpopups += ((CMainFrame*)m_pMainWnd)->m_lstrUtilCmds.GetAt(pos);
		allpopups += "\n";
		((CMainFrame*)m_pMainWnd)->m_lstrUtilCmds.GetNext(pos);
	}
	WriteProfileBinary("ExUtils","cmds", (LPBYTE)allpopups.GetBuffer(1), allpopups.GetLength()+1);
*/
	i = 1;
	WriteProfileString("ExUtils", NULL, "");
	strcpy(Keyname1, "name"); 
	strcpy(Keyname2, "cmds");
	char Keyname3[10] = "sta";
	pos = ((CMainFrame*)m_pMainWnd)->m_lstrUtilNames.GetHeadPosition();
	while(pos!=NULL)
	{
		itoa(i, Keyname1+4, 10);
		WriteProfileString("ExUtils", Keyname1, ((CMainFrame*)m_pMainWnd)->m_lstrUtilNames.GetAt(pos));
		((CMainFrame*)m_pMainWnd)->m_lstrUtilNames.GetNext(pos);
		i++;
	}
	i = 1;
	pos = ((CMainFrame*)m_pMainWnd)->m_lstrUtilCmds.GetHeadPosition();
	while(pos!=NULL)
	{
		itoa(i, Keyname2+4, 10);
		WriteProfileString("ExUtils", Keyname2, ((CMainFrame*)m_pMainWnd)->m_lstrUtilCmds.GetAt(pos));
		((CMainFrame*)m_pMainWnd)->m_lstrUtilCmds.GetNext(pos);
		i++;
	}
	i = 1;
	pos = ((CMainFrame*)m_pMainWnd)->m_lbUtilStart.GetHeadPosition();
	while(pos!=NULL)
	{
		itoa(i, Keyname3+3, 10);
		WriteProfileInt("ExUtils", Keyname3, ((CMainFrame*)m_pMainWnd)->m_lbUtilStart.GetAt(pos));
		((CMainFrame*)m_pMainWnd)->m_lbUtilStart.GetNext(pos);
		i++;
	}

	//band position
	char temp[7]="band", rect[10]="bandrc";
	RECT bandrect;
	CChevBar * rb  = &((CMainFrame*)m_pMainWnd)->m_wndReBar;
	REBARBANDINFO rbbi;
	rbbi.cbSize = sizeof(rbbi);
	rbbi.fMask = RBBIM_ID|RBBIM_STYLE;
	for(i=0; i< rb->GetReBarCtrl().GetBandCount(); i++)
	{
		itoa(i, temp+4, 10);
		rb->GetReBarCtrl().GetBandInfo(i, &rbbi);
		WriteProfileInt("Settings", temp, rbbi.wID);
		itoa(i, rect+6, 10);
		rb->GetReBarCtrl().GetRect(i, &bandrect);
		WriteProfileBinary("Settings", rect, (LPBYTE)&bandrect, sizeof(LONG)*4);
		//show hide bands
		if(rbbi.fStyle & RBBS_HIDDEN )
			WriteProfileInt("Bands", temp, 0);
		else
			WriteProfileInt("Bands", temp,1);
	}
	itoa(i, temp+4, 10);
	WriteProfileInt("Settings", temp, 0);

	//bottom bar
	char temp2[8]="bandb";
	rb  = &((CMainFrame*)m_pMainWnd)->m_wndReBar2;
	rbbi.cbSize = sizeof(rbbi);
	rbbi.fMask = RBBIM_ID|RBBIM_STYLE;
	for(i=0; i< rb->GetReBarCtrl().GetBandCount(); i++)
	{
		itoa(i, temp2+5, 10);
		rb->GetReBarCtrl().GetBandInfo(i, &rbbi);
		//show hide bands
		if(rbbi.fStyle & RBBS_HIDDEN )
			WriteProfileInt("Bands", temp2, 0);
		else
			WriteProfileInt("Bands", temp2,1);
	}

	//active new
	WriteProfileInt("Settings", "ActiveNew", ((CMainFrame*)m_pMainWnd)->m_bActiveNewWindow);
	//active new
	WriteProfileInt("Settings", "AlwaysNew", ((CMainFrame*)m_pMainWnd)->m_bAlwaysNewWindow);

	//status bar
	if(((CMainFrame*)m_pMainWnd)->m_wndStatusBar.IsWindowVisible())
		WriteProfileInt("Bands", "Status", 1);
	else
		WriteProfileInt("Bands", "Status" ,0);

	//save last visited urls
	allpopups.Empty();
	CTabCtrl * pTab = &((CMainFrame*)m_pMainWnd)->m_wndTab;
	CChildFrame* tcf;
	UINT n = pTab->GetItemCount();
	TCITEM TabCtrlItem;
	TabCtrlItem.mask = TCIF_PARAM;

	for(i=0;i<n;i++)
	{
		pTab->GetItem(i, &TabCtrlItem);
		tcf = ((CChildFrame*)TabCtrlItem.lParam);
		if(tcf != NULL && tcf->m_pView!=NULL)
		{
			allpopups += tcf->m_pView->GetLocationURL();
			allpopups += "\n";			
		}
	}
	WriteProfileBinary("Settings","lastvisit", (LPBYTE)allpopups.GetBuffer(1), allpopups.GetLength()+1);

	//start favorite folder
	WriteProfileString("Settings","StartFolder", ((CMainFrame*)m_pMainWnd)->m_strStartFavFolder);

	//multiline tab
	WriteProfileInt("Settings", "MultiLineTab", ((CMainFrame*)m_pMainWnd)->m_bMultiLineTab);

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

	//display ip
	WriteProfileInt("Settings", "DisplayIP", ((CMainFrame*)m_pMainWnd)->m_bDisplayIP);

	//Background PIC
	WriteProfileString("Settings", "Background", ((CMainFrame*)m_pMainWnd)->m_strBGPic);

	//Exp Bar
	CString str="";
	if(((CMainFrame*)m_pMainWnd)->m_wndInstantBar.GetSafeHwnd()==NULL)
		str = "";
	else if(((CMainFrame*)m_pMainWnd)->m_wndInstantBar.IsVisible())
		((CMainFrame*)m_pMainWnd)->m_wndInstantBar.GetWindowText(str);
	WriteProfileString("Settings", "ExpBar", str);

	//text label
	WriteProfileInt("Settings", "TextLabel", ((CMainFrame*)m_pMainWnd)->m_bTextLabel);

	//autosizing tab
	WriteProfileInt("Settings","AutoTab", ((CMainFrame*)m_pMainWnd)->m_bAutoTab);

	//max autosizing tab width
	WriteProfileInt("Settings","MaxTabWidth", ((CMainFrame*)m_pMainWnd)->m_nMaxTabWidth);
	//min autosizing tab width
	WriteProfileInt("Settings","MinTabWidth", ((CMainFrame*)m_pMainWnd)->m_nMinTabWidth);

	//confirm when exit
	WriteProfileInt("Settings","ConfirmExit", bConfirmExit);

	//use shortcut
	WriteProfileInt("Settings","UseSC", ((CMainFrame*)m_pMainWnd)->m_bUseSC);

	//use alias
	WriteProfileInt("Settings","UseAlias", ((CMainFrame*)m_pMainWnd)->m_bUseAlias);

	//save shortcuts
	char key[9]="F";
	for(i=0;i<11;i++)
	{
		itoa(i+2, key+1, 10);
		WriteProfileString("Shortcuts", key, ((CMainFrame*)m_pMainWnd)->m_strShortCuts[i]);
	}

	//save alias
	pos = ((CMainFrame*)pMainFrame)->m_mapAlias.GetStartPosition();
	CString alias, url;
	i=0;
	while(pos!=NULL)
	{
		((CMainFrame*)pMainFrame)->m_mapAlias.GetNextAssoc(pos, alias, url);
		key[0]='A';
		itoa(i, key+1, 10);
		WriteProfileString("Alias", key, alias);
		key[0]='U';
		itoa(i, key+1, 10);
		WriteProfileString("Alias", key, url);
		i++;
	}
	key[0]='A';
	itoa(i, key+1, 10);
	WriteProfileString("Alias", key, "");
	key[0]='U';
	itoa(i, key+1, 10);
	WriteProfileString("Alias", key, "");

	//max menu width
	WriteProfileInt("Settings","MenuSize", ((CMainFrame*)m_pMainWnd)->m_nMenuWidth);

	//domains
	WriteProfileString("Domains", "CE1", ((CMainFrame*)pMainFrame)->m_strCE1);
	WriteProfileString("Domains", "CE2", ((CMainFrame*)pMainFrame)->m_strCE2);
	WriteProfileString("Domains", "SE1", ((CMainFrame*)pMainFrame)->m_strSE1);
	WriteProfileString("Domains", "SE2", ((CMainFrame*)pMainFrame)->m_strSE2);
	WriteProfileString("Domains", "CSE1", ((CMainFrame*)pMainFrame)->m_strCSE1);
	WriteProfileString("Domains", "CSE2", ((CMainFrame*)pMainFrame)->m_strCSE2);

	//single menu
	WriteProfileInt("Settings","SingleMenu", bSingleMenu);
	//sys tray
	WriteProfileInt("Settings","SysTray", bSysTray);
	//3721
	WriteProfileInt("Settings","Use3721", ((CMainFrame*)pMainFrame)->m_bUse3721);
	//max wins
	WriteProfileInt("Settings","MaxWins", nMaxWins);
	//sequence
	WriteProfileInt("Settings", "Sequence", ((CMainFrame*)m_pMainWnd)->m_nSeq);
	//silent
	WriteProfileInt("Settings", "Silent", bSilent);
	//defaut font size
	WriteProfileInt("Settings", "DefFontSize", nDefFontSize);
	//disable scroll text on statusbar
	WriteProfileInt("Settings", "DisScrollText", bURLOnly);
	//interval
	WriteProfileInt("Settings", "Interval", ((CMainFrame*)m_pMainWnd)->m_nInterval);
	//open link in new window
	WriteProfileInt("Settings", "LinkInNewWin", bLinkInNewWin);

	//default browse mode
	WriteProfileInt("BModes", "ActiveNewWindow", ((CMainFrame*)m_pMainWnd)->m_bmUserDefault.m_bActiveNewWindow);  
	WriteProfileInt("BModes", "AlwaysNewWindow", ((CMainFrame*)m_pMainWnd)->m_bmUserDefault.m_bAlwaysNewWindow);  
	WriteProfileInt("BModes", "Seq", ((CMainFrame*)m_pMainWnd)->m_bmUserDefault.m_nSeq); 
	WriteProfileInt("BModes", "LinkInNewWin", ((CMainFrame*)m_pMainWnd)->m_bmUserDefault.bLinkInNewWin);

	//auto scroll
	WriteProfileInt("Settings", "AutoScrollAfterDL", ((CMainFrame*)m_pMainWnd)->m_bDefScrollAfterDL); 
	WriteProfileInt("Settings", "UseAutoScroll", ((CMainFrame*)m_pMainWnd)->m_bDefUseAutoScroll);
	WriteProfileInt("Settings", "SrSpeed", ((CMainFrame*)m_pMainWnd)->m_nDefSrSpeed);  

}


BOOL CMyIEApp::OnIdle(LONG lCount) 
{
	// TODO: Add your specialized code here and/or call the base class
	if(pMainFrame!=NULL)
	{
		if(((CMainFrame*)pMainFrame)->m_bFavDirty==3 || (((CMainFrame*)pMainFrame)->m_bFavDirty && nDelay>30))
		{
			//((CMainFrame*)pMainFrame)->InitFavorites();
			((CMainFrame*)pMainFrame)->PostMessage(WM_UPDATE_FAV);
			((CMainFrame*)pMainFrame)->m_bFavDirty = FALSE;
			nDelay=0;
		}
		else if(((CMainFrame*)pMainFrame)->m_bFavDirty)
			nDelay++;

		//auto start
		if(m_bAutoStart)
		{
			if(m_posAutoStart==NULL)
			{
				m_posAutoStart = ((CMainFrame*)pMainFrame)->m_lbUtilStart.GetHeadPosition();
				m_nAutoStart = 0;
			}
			else
			{
				((CMainFrame*)pMainFrame)->m_lbUtilStart.GetNext(m_posAutoStart);
				m_nAutoStart++;
			}
			if(m_posAutoStart != NULL)
			{
				while(m_posAutoStart!=NULL && ((CMainFrame*)pMainFrame)->m_lbUtilStart.GetAt(m_posAutoStart)==FALSE)
				{
					((CMainFrame*)pMainFrame)->m_lbUtilStart.GetNext(m_posAutoStart);
					m_nAutoStart++;
				}
				if(m_posAutoStart!=NULL)
				{
					//start the tool
					CString cmd;
					POSITION pos = ((CMainFrame*)pMainFrame)->m_lstrUtilCmds.FindIndex(m_nAutoStart);
					if(pos!=NULL)
					{
						cmd = ((CMainFrame*)pMainFrame)->m_lstrUtilCmds.GetAt(pos);

						char * ch, *ch1 = cmd.GetBuffer(1);
						char * szPath = ch1;
						ch = strchr(szPath, '\"');
						if(ch!=NULL)
						{
							ch1 = ch+1;
							ch = strchr(ch1, '\"');
							if(ch!=NULL)
								*ch ='\0';
						}
						else
						{
							ch = strchr(szPath, ' ');
							if(ch!=NULL)
								*ch = '\0';
						}
						if(ch!=NULL)
							ch++;
						if((UINT)ShellExecute(NULL, "open", ch1 , ch, ".", SW_SHOW )<=32)
							AfxMessageBox(IDS_UTIL_FAIL);

					}
				}
				else
					m_bAutoStart = FALSE;
			}
			else
				m_bAutoStart = FALSE;
		}
	}
	return CWinApp::OnIdle(lCount);
}


long LoadBytes()
{
	HKEY            hKey;
	long            sz;
	DWORD           dwSize = 4;

	if(RegOpenKey(HKEY_DYN_DATA, _T("PerfStats\\StatData"), &hKey) != ERROR_SUCCESS)
	{
		TRACE0("Main setting not found\n");
		return 0;
	}
	dwSize = sizeof(sz);
	sz=0;
	RegQueryValueEx(hKey, _T("Dial-Up Adapter\\TotalBytesRecvd"), NULL, NULL, (LPBYTE)&sz, &dwSize);
	
	RegCloseKey(hKey);

	return sz;
}

BOOL CMyIEApp::FirstRun()
{
	int ver = 200; //2.00
	int oldver = GetProfileInt("Settings", "Version", 0);
	if(ver!=oldver)
	{
		//the first time run this version
		WriteProfileInt("Settings", "Version", ver);

		//add the code to initialize
#ifdef WEST_VER
		WriteProfileString("Settings", "Background", "dhxu1.bmp");
#endif
		return TRUE;
	}
	return FALSE;
}

⌨️ 快捷键说明

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