📄 preferences.cpp
字号:
//this file is part of eMule
//Copyright (C)2002 Merkur ( devs@emule-project.net / http://www.emule-project.net )
//
//This program is free software; you can redistribute it and/or
//modify it under the terms of the GNU General Public License
//as published by the Free Software Foundation; either
//version 2 of the License, or (at your option) any later version.
//
//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
//GNU General Public License for more details.
//
//You should have received a copy of the GNU General Public License
//along with this program; if not, write to the Free Software
//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#include "stdafx.h"
#include <io.h>
#include <share.h>
#include "emule.h"
#include "Preferences.h"
#include "Opcodes.h"
#include "OtherFunctions.h"
#include "Ini2.h"
#include "DownloadQueue.h"
#include "UploadQueue.h"
#include "Statistics.h"
#include "MD5Sum.h"
#include "PartFile.h"
#include "Sockets.h"
#include "ListenSocket.h"
#include "ServerList.h"
#include "SharedFileList.h"
#include "UpDownClient.h"
#include "SafeFile.h"
#include "emuledlg.h"
#include "StatisticsDlg.h"
#include "IP2Country.h" //EastShare - added by AndCycle, IP to Country
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
#pragma pack(1)
struct Preferences_Import19c_Struct{
uint8 version;
char nick[50];
uint16 maxupload;
uint16 maxdownload;
uint16 port;
uint16 maxconnections;
uint8 reconnect;
uint8 deadserver;
uint8 scorsystem;
char incomingdir[510];
char tempdir[510];
uint8 ICH;
uint8 autoserverlist;
uint8 updatenotify;
uint8 mintotray;
uchar userhash[16];
uint8 autoconnect;
uint8 addserversfromserver;
uint8 addserversfromclient;
};
#pragma pack()
#pragma pack(1)
struct Preferences_Import20a_Struct{
uint8 version;
char nick[50];
uint16 maxupload;
uint16 maxdownload;
uint16 port;
uint16 maxconnections;
uint8 reconnect;
uint8 deadserver;
uint16 deadserverretries;
uint8 scorsystem;
char incomingdir[510];
char tempdir[510];
uint8 ICH;
uint8 autoserverlist;
uint8 updatenotify;
uint8 mintotray;
uchar userhash[16];
uint8 autoconnect;
uint8 addserversfromserver;
uint8 addserversfromclient;
uint16 maxsourceperfile;
uint16 trafficOMeterInterval;
uint32 totalDownloaded;
uint32 totalUploaded;
int maxGraphDownloadRate;
int maxGraphUploadRate;
uint8 beepOnError;
uint8 confirmExit;
WINDOWPLACEMENT EmuleWindowPlacement;
int transferColumnWidths[9];
int serverColumnWidths[8];
uint8 splashscreen;
uint8 filterLANIPs;
};
#pragma pack()
#pragma pack(1)
struct Preferences_Import20b_Struct{
uint8 version;
char nick[50];
uint16 maxupload;
uint16 maxdownload;
uint16 port;
uint16 maxconnections;
uint8 reconnect;
uint8 deadserver;
uint8 scorsystem;
char incomingdir[510];
char tempdir[510];
uint8 ICH;
uint8 autoserverlist;
uint8 updatenotify;
uint8 mintotray;
uchar userhash[16];
uint8 autoconnect;
uint8 addserversfromserver;
uint8 addserversfromclient;
uint16 maxsourceperfile;
uint16 trafficOMeterInterval;
uint32 totalDownloaded; // outdated
uint32 totalUploaded; // outdated
int maxGraphDownloadRate;
int maxGraphUploadRate;
uint8 beepOnError;
uint8 confirmExit;
WINDOWPLACEMENT EmuleWindowPlacement;
int transferColumnWidths[9];
int serverColumnWidths[8];
uint8 splashscreen;
uint8 filterLANIPs;
uint64 totalDownloadedBytes;
uint64 totalUploadedBytes;
};
#pragma pack()
CPreferences thePrefs;
int CPreferences::m_iDbgHeap;
CString CPreferences::strNick;
uint16 CPreferences::minupload;
uint16 CPreferences::maxupload;
uint16 CPreferences::maxdownload;
uint16 CPreferences::port;
uint16 CPreferences::udpport;
uint16 CPreferences::nServerUDPPort;
uint16 CPreferences::maxconnections;
uint16 CPreferences::maxhalfconnections;
uint8 CPreferences::reconnect;
uint8 CPreferences::scorsystem;
TCHAR CPreferences::incomingdir[MAX_PATH];
TCHAR CPreferences::tempdir[MAX_PATH];
uint8 CPreferences::ICH;
uint8 CPreferences::autoserverlist;
uint8 CPreferences::updatenotify;
uint8 CPreferences::mintotray;
uint8 CPreferences::autoconnect;
uint8 CPreferences::autoconnectstaticonly;
uint8 CPreferences::autotakeed2klinks;
uint8 CPreferences::addnewfilespaused;
uint8 CPreferences::depth3D;
int CPreferences::m_iStraightWindowStyles;
TCHAR CPreferences::m_szSkinProfile[MAX_PATH];
TCHAR CPreferences::m_szSkinProfileDir[MAX_PATH];
uint8 CPreferences::addserversfromserver;
uint8 CPreferences::addserversfromclient;
uint16 CPreferences::maxsourceperfile;
uint16 CPreferences::trafficOMeterInterval;
uint16 CPreferences::statsInterval;
uchar CPreferences::userhash[16];
WINDOWPLACEMENT CPreferences::EmuleWindowPlacement;
int CPreferences::maxGraphDownloadRate;
int CPreferences::maxGraphUploadRate;
uint8 CPreferences::beepOnError;
uint8 CPreferences::confirmExit;
uint16 CPreferences::downloadColumnWidths[13];
BOOL CPreferences::downloadColumnHidden[13];
INT CPreferences::downloadColumnOrder[13];
uint16 CPreferences::uploadColumnWidths[8];
BOOL CPreferences::uploadColumnHidden[8];
INT CPreferences::uploadColumnOrder[8];
uint16 CPreferences::queueColumnWidths[10];
BOOL CPreferences::queueColumnHidden[10];
INT CPreferences::queueColumnOrder[10];
uint16 CPreferences::searchColumnWidths[14];
BOOL CPreferences::searchColumnHidden[14];
INT CPreferences::searchColumnOrder[14];
uint16 CPreferences::sharedColumnWidths[12];
BOOL CPreferences::sharedColumnHidden[12];
INT CPreferences::sharedColumnOrder[12];
uint16 CPreferences::serverColumnWidths[14];
BOOL CPreferences::serverColumnHidden[14];
INT CPreferences::serverColumnOrder[14];
uint16 CPreferences::clientListColumnWidths[8];
BOOL CPreferences::clientListColumnHidden[8];
INT CPreferences::clientListColumnOrder[8];
uint16 CPreferences::FilenamesListColumnWidths[2];
BOOL CPreferences::FilenamesListColumnHidden[2];
INT CPreferences::FilenamesListColumnOrder[2];
DWORD CPreferences::statcolors[15];
uint8 CPreferences::splashscreen;
uint8 CPreferences::filterLANIPs;
bool CPreferences::m_bAllocLocalHostIP;
uint8 CPreferences::onlineSig;
uint64 CPreferences::cumDownOverheadTotal;
uint64 CPreferences::cumDownOverheadFileReq;
uint64 CPreferences::cumDownOverheadSrcEx;
uint64 CPreferences::cumDownOverheadServer;
uint64 CPreferences::cumDownOverheadKad;
uint64 CPreferences::cumDownOverheadTotalPackets;
uint64 CPreferences::cumDownOverheadFileReqPackets;
uint64 CPreferences::cumDownOverheadSrcExPackets;
uint64 CPreferences::cumDownOverheadServerPackets;
uint64 CPreferences::cumDownOverheadKadPackets;
uint64 CPreferences::cumUpOverheadTotal;
uint64 CPreferences::cumUpOverheadFileReq;
uint64 CPreferences::cumUpOverheadSrcEx;
uint64 CPreferences::cumUpOverheadServer;
uint64 CPreferences::cumUpOverheadKad;
uint64 CPreferences::cumUpOverheadTotalPackets;
uint64 CPreferences::cumUpOverheadFileReqPackets;
uint64 CPreferences::cumUpOverheadSrcExPackets;
uint64 CPreferences::cumUpOverheadServerPackets;
uint64 CPreferences::cumUpOverheadKadPackets;
uint32 CPreferences::cumUpSuccessfulSessions;
uint32 CPreferences::cumUpFailedSessions;
uint32 CPreferences::cumUpAvgTime;
uint64 CPreferences::cumUpData_EDONKEY;
uint64 CPreferences::cumUpData_EDONKEYHYBRID;
uint64 CPreferences::cumUpData_EMULE;
uint64 CPreferences::cumUpData_MLDONKEY;
uint64 CPreferences::cumUpData_AMULE;
uint64 CPreferences::cumUpData_EMULECOMPAT;
uint64 CPreferences::cumUpData_SHAREAZA;
uint64 CPreferences::sesUpData_EDONKEY;
uint64 CPreferences::sesUpData_EDONKEYHYBRID;
uint64 CPreferences::sesUpData_EMULE;
uint64 CPreferences::sesUpData_MLDONKEY;
uint64 CPreferences::sesUpData_AMULE;
uint64 CPreferences::sesUpData_EMULECOMPAT;
uint64 CPreferences::sesUpData_SHAREAZA;
uint64 CPreferences::cumUpDataPort_4662;
uint64 CPreferences::cumUpDataPort_OTHER;
uint64 CPreferences::sesUpDataPort_4662;
uint64 CPreferences::sesUpDataPort_OTHER;
uint64 CPreferences::cumUpData_File;
uint64 CPreferences::cumUpData_Partfile;
uint64 CPreferences::sesUpData_File;
uint64 CPreferences::sesUpData_Partfile;
uint32 CPreferences::cumDownCompletedFiles;
uint16 CPreferences::cumDownSuccessfulSessions;
uint16 CPreferences::cumDownFailedSessions;
uint32 CPreferences::cumDownAvgTime;
uint64 CPreferences::cumLostFromCorruption;
uint64 CPreferences::cumSavedFromCompression;
uint32 CPreferences::cumPartsSavedByICH;
uint16 CPreferences::sesDownSuccessfulSessions;
uint16 CPreferences::sesDownFailedSessions;
uint32 CPreferences::sesDownAvgTime;
uint16 CPreferences::sesDownCompletedFiles;
uint64 CPreferences::sesLostFromCorruption;
uint64 CPreferences::sesSavedFromCompression;
uint16 CPreferences::sesPartsSavedByICH;
uint64 CPreferences::cumDownData_EDONKEY;
uint64 CPreferences::cumDownData_EDONKEYHYBRID;
uint64 CPreferences::cumDownData_EMULE;
uint64 CPreferences::cumDownData_MLDONKEY;
uint64 CPreferences::cumDownData_AMULE;
uint64 CPreferences::cumDownData_EMULECOMPAT;
uint64 CPreferences::cumDownData_SHAREAZA;
uint64 CPreferences::cumDownData_URL;
uint64 CPreferences::sesDownData_EDONKEY;
uint64 CPreferences::sesDownData_EDONKEYHYBRID;
uint64 CPreferences::sesDownData_EMULE;
uint64 CPreferences::sesDownData_MLDONKEY;
uint64 CPreferences::sesDownData_AMULE;
uint64 CPreferences::sesDownData_EMULECOMPAT;
uint64 CPreferences::sesDownData_SHAREAZA;
uint64 CPreferences::sesDownData_URL;
uint64 CPreferences::cumDownDataPort_4662;
uint64 CPreferences::cumDownDataPort_OTHER;
uint64 CPreferences::sesDownDataPort_4662;
uint64 CPreferences::sesDownDataPort_OTHER;
float CPreferences::cumConnAvgDownRate;
float CPreferences::cumConnMaxAvgDownRate;
float CPreferences::cumConnMaxDownRate;
float CPreferences::cumConnAvgUpRate;
float CPreferences::cumConnMaxAvgUpRate;
float CPreferences::cumConnMaxUpRate;
uint64 CPreferences::cumConnRunTime;
uint16 CPreferences::cumConnNumReconnects;
uint16 CPreferences::cumConnAvgConnections;
uint16 CPreferences::cumConnMaxConnLimitReached;
uint16 CPreferences::cumConnPeakConnections;
uint32 CPreferences::cumConnTransferTime;
uint32 CPreferences::cumConnDownloadTime;
uint32 CPreferences::cumConnUploadTime;
uint32 CPreferences::cumConnServerDuration;
uint16 CPreferences::cumSrvrsMostWorkingServers;
uint32 CPreferences::cumSrvrsMostUsersOnline;
uint32 CPreferences::cumSrvrsMostFilesAvail;
uint16 CPreferences::cumSharedMostFilesShared;
uint64 CPreferences::cumSharedLargestShareSize;
uint64 CPreferences::cumSharedLargestAvgFileSize;
uint64 CPreferences::cumSharedLargestFileSize;
__int64 CPreferences::stat_datetimeLastReset;
uint8 CPreferences::statsConnectionsGraphRatio;
UINT CPreferences::statsSaveInterval;
TCHAR CPreferences::statsExpandedTreeItems[256];
uint64 CPreferences::totalDownloadedBytes;
uint64 CPreferences::totalUploadedBytes;
WORD CPreferences::m_wLanguageID;
uint8 CPreferences::transferDoubleclick;
EViewSharedFilesAccess CPreferences::m_iSeeShares;
uint8 CPreferences::m_iToolDelayTime;
uint8 CPreferences::bringtoforeground;
uint8 CPreferences::splitterbarPosition;
uint8 CPreferences::splitterbarPositionStat;
uint8 CPreferences::splitterbarPositionStat_HL;
uint8 CPreferences::splitterbarPositionStat_HR;
uint16 CPreferences::splitterbarPositionFriend;
uint16 CPreferences::splitterbarPositionIRC;
uint8 CPreferences::m_uTransferWnd2;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -