ziggi
09.07.2016, 20:58
Описание
C++ класс, который предоставляет функции для работы со списком избранных серверов SA-MP лаунчера. Список избранных серверов находится по адресу %USERPROFILE%\Documents\GTA San Andreas User Files\SAMP\USERDATA.DAT.
Будет полезно для тех, кто создаёт или планирует создавать собственный лаунчер для SA-MP.
Спецификация формата хранения
Заголовок файла:
№
Размер (байт)
Описание
1
4
Тэг файла (SAMP)
2
4
Версия файла (1)
2
4
Количество серверов
Сервер:
№
Размер (байт)
Описание
1
4
Размер IP адреса
2
Зависит от значения №1
IP адрес
3
4
Порт
4
4
Размер названия сервера
5
Зависит от значения №4
Название сервера
6
4
Размер пароля
7
Зависит от значения №6
Пароль
8
4
Размер rcon-пароля
9
Зависит от значения №8
Rcon пароль
Использование
#include <iostream>
#include "SampFavorites.hpp"
int main()
{
SampFavorites data;
data.open("USERDATA.DAT");
if (!data.isOpen()) {
std::cout << "Error reading file" << std::endl;
return 1;
}
SampFavorites::Header header;
SampFavorites::Server server;
header = data.getHeader();
std::cout << header.fileTag << "\n"
<< header.fileVersion << "\n"
<< header.serversCount << "\n";
for (int i = 0; i < header.serversCount; i++) {
server = data.getServer(i);
std::cout << server.address << " | "
<< server.port << " | "
<< server.hostname << " | "
<< server.password << " | "
<< server.rcon << std::endl;
}
server.address = (char *)"999.000.111.32";
server.port = 4322;
server.hostname = (char *)"test host";
server.password = (char *)"pass22";
server.rcon = (char *)"rcon1";
data.addServer(server);
data.save("test.dat");
return 0;
}
Скачать
Последняя версия архивом: https://github.com/ziggi/SampFavorites/releases
Посмотреть не скачивая: SampFavorites.hpp (https://github.com/ziggi/SampFavorites/blob/master/SampFavorites.hpp), SampFavorites.cpp (https://github.com/ziggi/SampFavorites/blob/master/SampFavorites.cpp)
C++ класс, который предоставляет функции для работы со списком избранных серверов SA-MP лаунчера. Список избранных серверов находится по адресу %USERPROFILE%\Documents\GTA San Andreas User Files\SAMP\USERDATA.DAT.
Будет полезно для тех, кто создаёт или планирует создавать собственный лаунчер для SA-MP.
Спецификация формата хранения
Заголовок файла:
№
Размер (байт)
Описание
1
4
Тэг файла (SAMP)
2
4
Версия файла (1)
2
4
Количество серверов
Сервер:
№
Размер (байт)
Описание
1
4
Размер IP адреса
2
Зависит от значения №1
IP адрес
3
4
Порт
4
4
Размер названия сервера
5
Зависит от значения №4
Название сервера
6
4
Размер пароля
7
Зависит от значения №6
Пароль
8
4
Размер rcon-пароля
9
Зависит от значения №8
Rcon пароль
Использование
#include <iostream>
#include "SampFavorites.hpp"
int main()
{
SampFavorites data;
data.open("USERDATA.DAT");
if (!data.isOpen()) {
std::cout << "Error reading file" << std::endl;
return 1;
}
SampFavorites::Header header;
SampFavorites::Server server;
header = data.getHeader();
std::cout << header.fileTag << "\n"
<< header.fileVersion << "\n"
<< header.serversCount << "\n";
for (int i = 0; i < header.serversCount; i++) {
server = data.getServer(i);
std::cout << server.address << " | "
<< server.port << " | "
<< server.hostname << " | "
<< server.password << " | "
<< server.rcon << std::endl;
}
server.address = (char *)"999.000.111.32";
server.port = 4322;
server.hostname = (char *)"test host";
server.password = (char *)"pass22";
server.rcon = (char *)"rcon1";
data.addServer(server);
data.save("test.dat");
return 0;
}
Скачать
Последняя версия архивом: https://github.com/ziggi/SampFavorites/releases
Посмотреть не скачивая: SampFavorites.hpp (https://github.com/ziggi/SampFavorites/blob/master/SampFavorites.hpp), SampFavorites.cpp (https://github.com/ziggi/SampFavorites/blob/master/SampFavorites.cpp)