新增网络中转服务器+designer源码项目

This commit is contained in:
feiyangqingyun
2020-05-24 16:43:29 +08:00
parent 40ee120623
commit 520f091dbc
400 changed files with 106471 additions and 35 deletions

94
netserver/api/app.cpp Normal file
View File

@@ -0,0 +1,94 @@
#include "app.h"
#include "quiwidget.h"
QString App::ConfigFile = "config.ini";
int App::ListenPort1 = 6907;
int App::CmdStart1 = 76;
int App::CmdLen1 = 12;
bool App::HexData1 = false;
int App::ListenPort2 = 6908;
int App::CmdStart2 = 76;
int App::CmdLen2 = 12;
bool App::HexData2 = false;
void App::readConfig()
{
if (!checkConfig()) {
return;
}
QSettings set(App::ConfigFile, QSettings::IniFormat);
set.beginGroup("AppConfig");
App::ListenPort1 = set.value("ListenPort1").toInt();
App::CmdStart1 = set.value("CmdStart1").toInt();
App::CmdLen1 = set.value("CmdLen1").toInt();
App::HexData1 = set.value("HexData1").toBool();
App::ListenPort2 = set.value("ListenPort2").toInt();
App::CmdStart2 = set.value("CmdStart2").toInt();
App::CmdLen2 = set.value("CmdLen2").toInt();
App::HexData2 = set.value("HexData2").toBool();
set.endGroup();
}
void App::writeConfig()
{
QSettings set(App::ConfigFile, QSettings::IniFormat);
set.beginGroup("AppConfig");
set.setValue("ListenPort1", App::ListenPort1);
set.setValue("CmdStart1", App::CmdStart1);
set.setValue("CmdLen1", App::CmdLen1);
set.setValue("HexData1", App::HexData1);
set.setValue("ListenPort2", App::ListenPort2);
set.setValue("CmdStart2", App::CmdStart2);
set.setValue("CmdLen2", App::CmdLen2);
set.setValue("HexData2", App::HexData2);
set.endGroup();
}
void App::newConfig()
{
#if (QT_VERSION <= QT_VERSION_CHECK(5,0,0))
#endif
writeConfig();
}
bool App::checkConfig()
{
//如果配置文件大小为0,则以初始值继续运行,并生成配置文件
QFile file(App::ConfigFile);
if (file.size() == 0) {
newConfig();
return false;
}
//如果配置文件不完整,则以初始值继续运行,并生成配置文件
if (file.open(QFile::ReadOnly)) {
bool ok = true;
while (!file.atEnd()) {
QString line = file.readLine();
line = line.replace("\r", "");
line = line.replace("\n", "");
QStringList list = line.split("=");
if (list.count() == 2) {
if (list.at(1) == "") {
ok = false;
break;
}
}
}
if (!ok) {
newConfig();
return false;
}
} else {
newConfig();
return false;
}
return true;
}