add support for ChartsCreator and ChartsViewer

Signed-off-by: Double Sine <xiao_ai_yu@live.cn>
This commit is contained in:
Double Sine 2022-05-26 08:32:52 +08:00
parent 8a004df873
commit ce90ef2ade
No known key found for this signature in database
GPG Key ID: 44460E4F43EA8633
3 changed files with 15 additions and 5 deletions

View File

@ -75,8 +75,10 @@ namespace nkg {
std::cout << " 7. MariaDB" << std::endl;
std::cout << " 8. MongoDB" << std::endl;
std::cout << " 9. ReportViewer" << std::endl;
std::cout << " 10. ChartsCreator" << std::endl;
std::cout << " 11. ChartsViewer" << std::endl;
std::cout << std::endl;
sn_generator.set_software_type(static_cast<navicat_software_type>(read_int(0, 9, "(Input index)> ", "Invalid index.")));
sn_generator.set_software_type(static_cast<navicat_software_type>(read_int(0, 11, "(Input index)> ", "Invalid index.")));
std::cout << std::endl;
std::cout << "[*] Select product language:" << std::endl;
@ -96,7 +98,7 @@ namespace nkg {
std::cout << std::endl;
std::cout << "[*] Input major version number:" << std::endl;
sn_generator.set_software_version(read_int(11, 16, 16, "(range: 11 ~ 16, default: 16)> ", "Invalid number."));
sn_generator.set_software_version(read_int(1, 16, 16, "(range: 1 ~ 16, default: 16)> ", "Invalid number."));
std::cout << std::endl;
return sn_generator;
@ -121,7 +123,7 @@ namespace nkg {
std::cout << std::endl;
std::cout << "[*] Input major version number:" << std::endl;
sn_generator.set_software_version(read_int(0, 15, 12, "(range: 0 ~ 15, default: 12)> ", "Invalid number."));
sn_generator.set_software_version(read_int(1, 16, 16, "(range: 1 ~ 16, default: 16)> ", "Invalid number."));
std::cout << std::endl;
return sn_generator;

View File

@ -119,6 +119,12 @@ namespace nkg {
case navicat_software_type::ReportViewer:
m_data[7] = 0xb;
break;
case navicat_software_type::ChartsCreator:
m_data[7] = 0x86;
break;
case navicat_software_type::ChartsViewer:
m_data[7] = 0x88;
break;
default:
__builtin_unreachable();
}
@ -129,7 +135,7 @@ namespace nkg {
}
void navicat_serial_generator::set_software_version(int ver) {
if (11 <= ver && ver < 16) {
if (1 <= ver && ver < 16) {
static_assert(sizeof(m_des_key) == sizeof(s_des_key0));
m_data[8] = static_cast<std::uint8_t>((ver << 4) | (m_data[8] & 0x0f));

View File

@ -29,7 +29,9 @@ namespace nkg {
SQLite,
MariaDB,
MongoDB,
ReportViewer
ReportViewer,
ChartsCreator,
ChartsViewer
};
class navicat_serial_generator {