📄 setcancelproxy.cpp
字号:
/******************************************************************************
Module: SetCancelProxy.cpp
Notices: Copyright (c) 2006 Lenus Margin
******************************************************************************/
#include "SetCancelProxy.h"
///////////////////////////////////////////////////////////////////////////////
char *regIE = "Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings";
char *regFlash = "Software\\JetCar\\JetCar\\Proxy";
char *regFlashProxy = "Software\\JetCar\\JetCar\\Proxy\\Proxy2";
char *FXPIni = "D:\\Program Files\\FlashFXP\\FlashFxp.ini";
char *NETTransport = "D:\\Program Files\\Xi\\NetTransport 2\\Admin' NetTransport.proxy";
char *MYIEIni = "D:\\Program Files\\Maxthon\\Config\\config.ini";
IPPORT ProxyIP;
///////////////////////////////////////////////////////////////////////////////
void GetIP(HWND hwnd)
{
static char IP_PORTbuf[20];
memset(IP_PORTbuf,0,sizeof(IP_PORTbuf));
GetDlgItemText(hwnd,IDC_IP,IP_PORTbuf,sizeof(IP_PORTbuf));
ProxyIP.strIP = IP_PORTbuf;
ProxyIP.strPORT = strstr(IP_PORTbuf,":")+1;
}
///////////////////////////////////////////////////////////////////////////////
BOOL SetReg(LPCTSTR Key, char * ValueName,const char *Value,DWORD ValueType,DWORD Size)
{
HKEY hkey;
if(ERROR_SUCCESS == RegCreateKey(HKEY_CURRENT_USER,Key,&hkey))
{
RegSetValueEx(hkey,ValueName,NULL,ValueType,(BYTE *)Value,Size);
RegCloseKey(hkey);
return TRUE;
}
else
return FALSE;
}
///////////////////////////////////////////////////////////////////////////////
BOOL WriteIniFile(char *FileName,char *SenctionName,char *ValueName,char *Value)
{
return WritePrivateProfileString(SenctionName,ValueName,Value,FileName);
}
///////////////////////////////////////////////////////////////////////////////
BOOL CheckIP(HWND hwnd)
{
char *temp;
GetIP(hwnd);
if(ProxyIP.strIP == NULL && ProxyIP.strPORT == NULL)
return FALSE;
*(ProxyIP.strPORT-1) = 0;
ProxyIP.ip = inet_addr(ProxyIP.strIP);
ProxyIP.port = strtol(ProxyIP.strPORT,&temp,10);
if(ProxyIP.ip ==INADDR_NONE || !ProxyIP.port)
return FALSE;
return TRUE;
}
///////////////////////////////////////////////////////////////////////////////
BOOL UpdataProxyIP(HWND hwnd)
{
int ret=1;
// 设置IE代理,写注册表
if(IsDlgButtonChecked(hwnd,IDC_IE))
{
*(ProxyIP.strPORT-1)=':';
ret &=SetReg(regIE,"ProxyServer",ProxyIP.strIP,REG_SZ,strlen(ProxyIP.strIP));
*(ProxyIP.strPORT-1)=0;
}
// 设置Flash代理,写注册表
if(IsDlgButtonChecked(hwnd,IDC_FLASH))
{
ret &=SetReg(regFlashProxy,"Server",ProxyIP.strIP,REG_SZ,strlen(ProxyIP.strIP));
ret &=SetReg(regFlashProxy,"Port",(char *)&ProxyIP.port,REG_DWORD,4);
}
// 设置FXP代理,写ini文件
if(IsDlgButtonChecked(hwnd,IDC_FXP))
{
ret &=WriteIniFile(FXPIni,"Proxy","Type","13");
ret &=WriteIniFile(FXPIni,"Proxy","Host",ProxyIP.strIP);
ret &=WriteIniFile(FXPIni,"Proxy","Port",ProxyIP.strPORT);
}
// 设置影音传送带代理,写proxy文件
if(IsDlgButtonChecked(hwnd,IDC_NETTRANS))
{
;
}
// 设置MYIE代理,写ini文件 因为只是使用IE的代理所以不需要设置什么
if(IsDlgButtonChecked(hwnd,IDC_MYIE))
{
;
}
return ret;
}
///////////////////////////////////////////////////////////////////////////////
BOOL SetProxy(HWND hwnd)
{
int ret=1;
int EnableValue=1;
// 启动IE代理
if(IsDlgButtonChecked(hwnd,IDC_IE))
ret &= SetReg(regIE,"ProxyEnable",(char *)&EnableValue,REG_DWORD,4);
// 启动Flash代理
if(IsDlgButtonChecked(hwnd,IDC_FLASH))
{
ret &=SetReg(regFlash,"DefaultForHttp",(char *)&EnableValue,REG_DWORD,4);
ret &=SetReg(regFlash,"DefaultForFtp",(char *)&EnableValue,REG_DWORD,4);
}
// 启动FXP代理
if(IsDlgButtonChecked(hwnd,IDC_FXP))
{
ret &=WriteIniFile(FXPIni,"Proxy","Type","13");
}
// 启动影音传送带代理
if(IsDlgButtonChecked(hwnd,IDC_NETTRANS))
{
;
}
// 启动MYIE代理
if(IsDlgButtonChecked(hwnd,IDC_MYIE))
{
ret &=WriteIniFile(MYIEIni,"Settings","UseIEProxy","1");
}
return ret;
}
///////////////////////////////////////////////////////////////////////////////
BOOL CancelProxy(HWND hwnd)
{
int ret = 1;
int DisableValue = 0;
// 取消IE代理
if(IsDlgButtonChecked(hwnd,IDC_IE))
ret &= SetReg(regIE,"ProxyEnable",(char *)&DisableValue,REG_DWORD,4);
// 取消Flash代理
if(IsDlgButtonChecked(hwnd,IDC_FLASH))
{
ret &=SetReg(regFlash,"DefaultForHttp",(char *)&DisableValue,REG_DWORD,4);
ret &=SetReg(regFlash,"DefaultForFtp",(char *)&DisableValue,REG_DWORD,4);
}
// 取消FXP代理
if(IsDlgButtonChecked(hwnd,IDC_FXP))
ret &=WriteIniFile(FXPIni,"Proxy","Type","0");
// 取消影音传送带代理
if(IsDlgButtonChecked(hwnd,IDC_NETTRANS))
;
// 取消MYIE代理
if(IsDlgButtonChecked(hwnd,IDC_MYIE))
ret &=WriteIniFile(MYIEIni,"Settings","UseIEProxy","0");
return ret;
}
BOOL path(HWND hwnd,char *Name)
{
OPENFILENAME ofn;
memset(&ofn,0,sizeof(OPENFILENAME));
ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = hwnd;
ofn.lpstrFilter = NULL;
ofn.nMaxFile = MAX_PATH;
ofn.Flags = OFN_PATHMUSTEXIST | OFN_PATHMUSTEXIST;
ofn.lpstrFile = Name;
if(GetOpenFileName(&ofn))
return TRUE;
else
return FALSE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -