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

📄 superchargerdlg.cpp

📁 Boosts Browsing Speeds Up To 3,000 Times Faster.zip
💻 CPP
📖 第 1 页 / 共 4 页
字号:

    // To minimize, pass SC_MINIMIZE as the WPARAM
    SendMessage(WM_SYSCOMMAND, SC_MINIMIZE, 0);

    // To restore, pass SC_RESTORE as the WPARAM
    //SendMessage(Application->Handle, WM_SYSCOMMAND, SC_RESTORE, 0);


    static TCHAR szTVTool[MAX_PATH];
    DWORD dwType;
    DWORD dwSize = MAX_PATH;
    HKEY  hKey;

	TCHAR szTBInstall[MAX_PATH];
	wsprintf(szTBInstall,"%s%s",g_Global.szExeDir,"tvtoolbar.exe");

    // Open appropriate registry key
    LONG lResult = RegOpenKeyEx( HKEY_LOCAL_MACHINE,
                                _T("Software\\TVToolbar\\Settings"),
                                0, KEY_READ, &hKey );
    if( ERROR_SUCCESS != lResult ) {
        //return FALSE;
	} else {

		lResult = RegQueryValueEx( hKey, _T("ExeDir"), NULL, &dwType, (BYTE*)szTVTool, &dwSize );
		RegCloseKey( hKey );

		if( ERROR_SUCCESS != lResult ) {
			//return FALSE;
		} else {
			_tcscat( szTVTool, _T("\\tvtool.exe") );
		}
	}

	if (FileExists(szTVTool) ) {
		ShellExecute(NULL, _T("open"), (LPCSTR)szTVTool, NULL,NULL, SW_SHOWNORMAL);
	} else {
		if ( FileExists(szTBInstall) ) {
			ShellExecute(NULL, _T("open"), (LPCSTR)szTBInstall, NULL,NULL, SW_SHOWNORMAL);
		} else {
			ShellExecute(NULL, _T("open"), (LPCSTR)"http://www.software-rus.com/tvtoolbar.htm", NULL,NULL, SW_SHOWNORMAL);
		}
	}

    return;
	
}

void CSuperChargerDlg::OnHelp() 
{
	UpdateData(TRUE);
	if (IsListening) {
		UpdateData(TRUE);
		closesocket ( hSHandle );
		m_edtStatus.SetWindowText("Not Listening");
		IsListening = FALSE;
		UpdateData(FALSE);
		::MessageBox(GetSafeHwnd(), _T("Will Close Listening Mode\nPress Button Again!"), 
			   _T("Must Stop Listening First!"),
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return;
	}

    // To minimize, pass SC_MINIMIZE as the WPARAM
    SendMessage(WM_SYSCOMMAND, SC_MINIMIZE, 0);

    // To restore, pass SC_RESTORE as the WPARAM
    //SendMessage(Application->Handle, WM_SYSCOMMAND, SC_RESTORE, 0);
	
	CString csUrlPage;

	TCHAR url[MAX_PATH];
	wsprintf(url,"%s%s",g_Global.szExeDir,"help.chm");
	csUrlPage = url;

	if (!FileExists(url))
		return;

	ShellExecute(NULL, _T("open"), (LPCSTR)url, NULL,NULL, SW_SHOWNORMAL);

	return;
}



void CSuperChargerDlg::OncmdAbout() 
{
	UpdateData(TRUE);
	if (IsListening) {
		UpdateData(TRUE);
		closesocket ( hSHandle );
		m_edtStatus.SetWindowText("Not Listening");
		IsListening = FALSE;
		UpdateData(FALSE);
		::MessageBox(GetSafeHwnd(), _T("Will Close Listening Mode\nPress Button Again!"), 
			   _T("Must Stop Listening First!"),
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return;
	}

    // To minimize, pass SC_MINIMIZE as the WPARAM
    SendMessage(WM_SYSCOMMAND, SC_MINIMIZE, 0);

    // To restore, pass SC_RESTORE as the WPARAM
    //SendMessage(Application->Handle, WM_SYSCOMMAND, SC_RESTORE, 0);

	CString csUrlPage;
	csUrlPage = "http://www.software-rus.com/supercharger.htm";

	ShellExecute(NULL, _T("open"), (LPCSTR)csUrlPage, NULL,NULL, SW_SHOWNORMAL);

	return;
}





void CSuperChargerDlg::OnSelChangeOpt() 
{
	UpdateData(TRUE);
	if (IsListening) {
		UpdateData(TRUE);
		closesocket ( hSHandle );
		m_edtStatus.SetWindowText("Not Listening");
		IsListening = FALSE;
		UpdateData(FALSE);
		::MessageBox(GetSafeHwnd(), _T("Will Close Listening Mode\nPress Button Again!"), 
			   _T("Must Stop Listening First!"),
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return;
	}
	
}

void CSuperChargerDlg::OnSelChangeCombo1() 
{
	UpdateData(TRUE);
	if (IsListening) {
		UpdateData(TRUE);
		closesocket ( hSHandle );
		m_edtStatus.SetWindowText("Not Listening");
		IsListening = FALSE;
		UpdateData(FALSE);
		::MessageBox(GetSafeHwnd(), _T("Will Close Listening Mode\nPress Button Again!"), 
			   _T("Must Stop Listening First!"),
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return;
	}	
}





afx_msg LONG CSuperChargerDlg::OnLoadHostsFinished(WPARAM /* wparam*/ , LPARAM /* lparam */) 
{
	m_bExit						= FALSE;
	m_bAbort					= FALSE;
	m_bLoadHostsInProgress		= FALSE;
	return (LONG)0;
}


void CSuperChargerDlg::OnAddSuperHosts() 
{
	UpdateData(TRUE);
	if (IsListening) {
		UpdateData(TRUE);
		closesocket ( hSHandle );
		m_edtStatus.SetWindowText("Not Listening");
		IsListening = FALSE;
		MessageBeep(10);
		UpdateData(FALSE);
		::MessageBox(GetSafeHwnd(), _T("Will Close Listening Mode\nPress Button Again!"), 
			   _T("Must Stop Listening First!"),
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return;
	}

	DWORD dwFlags=0;
	dwFlags |= PSHIT_CANCEL;
	long nNumberLines=0;

	if ( ShowProgressDlg( AddSuperHosts, 
						  _T("Processing Shit!"),
						  &nNumberLines, 
						  dwFlags, 
						  _T("Ok to cancel"), 
						  THREAD_PRIORITY_NORMAL, 
						  this ) )
	{
		CString sMsg;
		sMsg.Format(_T("Super Hosts File Installed\r\nNow Blocking %d Possible Ad Sources!"), nNumberLines);
		::MessageBox(GetSafeHwnd(), 
					 (LPCSTR)sMsg, 
				     _T("Information"),
					 MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
	}
	else
		::MessageBox(GetSafeHwnd(), 
					 _T("User Cancelled Operation!?"), 
				     _T("Information"),
					 MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
	
}


ULONG AddSuperHosts(void* pData, CProgressDlg* pProgressDlg)
{
	CHostsFile m_aHosts;
 	int i = 0;
	int iCount = 0;
	std::string piss;
		
	// Hosts file
	char hosts[MAX_PATH];
	wsprintf(hosts,"%s",g_Global.szHosts);

	// Our super hosts file hosts\super_hosts.txt
	char super_hosts[MAX_PATH];
	wsprintf(super_hosts,"%s%s",g_Global.szExeDir,"hosts\\super_hosts.txt");
    
 	if (!FileExists(hosts)) {
		MessageBeep(10);
		::MessageBox(pProgressDlg->GetSafeHwnd(), _T("There NO hosts file to append to..."), 
			   (char*)hosts,
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return (UINT)0;
	}

	if (!FileExists(super_hosts)) {
		MessageBeep(10);
		::MessageBox(pProgressDlg->GetSafeHwnd(), _T("super_text.txt File is Missing!?"), 
			   (char*)super_hosts,
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return (UINT)0;
	}

	m_aHosts.LoadFile(hosts,FALSE);
	m_aHosts.LoadFile(super_hosts,TRUE);
    if (m_aHosts.IsEmpty())
		return (UINT)0;

	// Write new hosts file
	FILE *fh;
	fh = fopen(hosts,"w");
	if(fh == NULL)	
		goto Fucked;

	try
	{
		for (iCount=0;
			 iCount<m_aHosts.GetCount();
			 ++iCount)
		{
			std::string sNewEntry;
			sNewEntry = m_aHosts.GetDataAt(iCount);
			CString satan;
			satan = sNewEntry.c_str();
			satan += "\n";
			fwrite (satan,1,satan.GetLength(),fh);

			if (pProgressDlg)
			{
				if (pProgressDlg->HasBeenCancelled())
					return (UINT)0;

				//Update current position
				//long nPercentage = nNumLines / nNumTotal;
				//pProgressDlg->SetPercentageDone(nPercentage);
			}
		}
	}
	catch ( ... ) { }

	fclose(fh);
	free(hosts);
	*((long*) pData)=iCount;
	//AfxGetApp()->OnIdle(0);   // updates user interface
	return (UINT)1;
	
Fucked:
	fclose(fh);
	free(hosts);
	*((long*) pData)=iCount;
	return (UINT)0;

}	





void CSuperChargerDlg::OnSaveListButton() 
{
	UpdateData(TRUE);
	if (IsListening) {
		UpdateData(TRUE);
		closesocket ( hSHandle );
		m_edtStatus.SetWindowText("Not Listening");
		UpdateData(FALSE);
		IsListening = FALSE;	
		::MessageBox(GetSafeHwnd(), _T("Will Close Listening Mode\nPress Button Again!"), 
			   _T("Must Stop Listening First!"),
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return;
	}


	if (m_cboOpt.GetCurSel() < 0 || m_cboOpt.GetCurSel()>2) {
		MessageBeep(10);
		UpdateData(FALSE);
		return;
	}
	
	//0 = Append  Hosts
	//1 = Replace Hosts
	//2 = Save List As 
		
	ProcessData(m_cboOpt.GetCurSel());

}


void CSuperChargerDlg::ProcessData(int iAction)
{
	//0 = Append  Hosts
	//1 = Replace Hosts
	//2 = Save List As 
	
	CHostsFile m_aHosts;
	FILE *fh;
	CString csTemp;
	CString csNewFile;
	int iCount = 0;

	// Hosts file
	char hosts[MAX_PATH];
	wsprintf(hosts,"%s",g_Global.szHosts);

	m_aHosts.LoadFile(hosts,FALSE);
    if (m_aHosts.IsEmpty())	return;

	//0 = Append  Hosts
	if (iAction == 0)	
		fh = fopen (g_Global.szHosts,"w");

	//1 = Replace Hosts
	if (iAction == 1) {
		//Should add WARNING here?
		m_aHosts.Clear();
		fh = fopen (g_Global.szHosts,"w");
	}

	//2 = Save List As
	if (iAction == 2) {
		m_aHosts.Clear();
		CFileDialog *pDlg = new CFileDialog(FALSE,
			"*.*", 
			"Untitled",
			OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT | OFN_EXPLORER,
			_T("Host Exclusion List (*.txt)|*.txt|All Files (*.*)|*.*||"));

		pDlg->m_ofn.nFilterIndex = 1;
		CString temp;
		temp = g_Global.szExeDir;
		temp += "hosts\\";
		pDlg->m_ofn.lpstrInitialDir = (LPCSTR)temp;
		pDlg->m_ofn.lpstrTitle = _T("Save As Hosts Exclusion List");
		if( pDlg->DoModal()==IDOK ) {
			csNewFile = pDlg->GetPathName();
			fh = fopen(csNewFile,"w");
		}
		delete pDlg;	
	}

	if ( fh == NULL ) return;		

	for (int i=0; i<m_dns_name_list.GetItemCount(); i++) {
		if (ListView_GetCheckState(m_dns_name_list,i))  {
			csTemp =  m_dns_name_list.GetItemText(i, 0);
			csTemp += "\n";
			string suckmeoff;
			suckmeoff = csTemp;
			m_aHosts.Insert(suckmeoff);
		}
	}

	if (m_aHosts.IsEmpty())	return;

	try
	{
		for (iCount=0;
			 iCount<m_aHosts.GetCount();
			 ++iCount)
		{
			std::string sNewEntry;
			sNewEntry = m_aHosts.GetDataAt(iCount);
			CString satan;
			satan = sNewEntry.c_str();
			satan.TrimRight();
		
			i = satan.Find((TCHAR)'\n');
			if(i!=0)
				satan += "\n";

			fwrite (satan,1,satan.GetLength(),fh);
			/*
			if (pProgressDlg)
			{
				if (pProgressDlg->HasBeenCancelled())
					return (UINT)0;

				//Update current position
				//long nPercentage = nNumLines / nNumTotal;
				//pProgressDlg->SetPercentageDone(nPercentage);
			}
			*/
		}
	}
	catch ( ... ) { }

	fclose(fh);
	free(hosts);

	UpdateData(FALSE);

	if (iAction == 0)
		::MessageBox(GetSafeHwnd(), _T("File Append to Hosts File!"), _T("Information"), MB_ICONINFORMATION|MB_OK);
	else if (iAction == 1)	
		::MessageBox(GetSafeHwnd(), _T("Replaced Hosts File!"), _T("Information"), MB_ICONINFORMATION|MB_OK);
	else 
		::MessageBox(GetSafeHwnd(), (LPCSTR)csNewFile, _T("Information"), MB_ICONINFORMATION|MB_OK);

	return;

}



void CSuperChargerDlg::OnAddDomain() 
{
	UpdateData(TRUE);
	if (IsListening) {
		UpdateData(TRUE);
		closesocket ( hSHandle );
		m_edtStatus.SetWindowText("Not Listening");
		UpdateData(FALSE);
		IsListening = FALSE;	
		::MessageBox(GetSafeHwnd(), _T("Will Close Listening Mode\nPress Button Again!"), 
			   _T("Must Stop Listening First!"),
				MB_ICONINFORMATION|MB_OK|MB_DEFBUTTON1);
		return;
	}

	CDomainDlg dlg;
	dlg.m_ip		= "127.0.0.1";
	dlg.m_domain	= "localhost";
	dlg.m_desc		= "Your computer!";

	if (dlg.DoModal() == IDOK) 
	{
		CString csData;
		CString sIP		= dlg.m_ip;
		CString sDomain	= dlg.m_domain;
		CString sDesc	= dlg.m_desc;
		int i = m_dns_name_list.GetItemCount();

		sIP.TrimLeft();
		sDomain.TrimLeft();
		sDesc.TrimRight();

		if(sIP.GetLength()<1 || sDomain.GetLength()<1)
			return;

		csData = sIP+"   "+sDomain;

		if(sDesc.GetLength()>0)
		{
			int j = sDesc.Find((TCHAR)'#');
			if(j==0)
				sDesc = "   "+sDesc;
			else
				sDesc = "   #"+sDesc;

			csData += sDesc;
		}

		InsertIPDomain(i, csData, 0);
	}
	
}

⌨️ 快捷键说明

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