Всем привет. Создать клиентскую часть по домену для защиты (не совсем защиты) fGuard очень просто.
Это можно осуществить в несколько простых этапов с заменой уже готового клиентского кода из шары.
Скачать чистый клиентский код защиты с сервера mmo-develop можно тут.
Собрать данный исходник можно с помощью программы Visual Studio C++ 2010-2016 года.
Итак начнем.
Этап 1:
Этап 2:
Прописываем Ваш домен вместо hosting.com и собираем клиентский .dll
Что бы собрать клиентский .dll клацаем так как у меня на скрине ниже.
Собранный клиентский .dll будет находиться в папке "Debug".
Ура! Теперь меняем в домене А записи на IP адрес Вашего сервера, и больше не имеем проблем с выдачей новых .dll после смены адреса сервера.
Это можно осуществить в несколько простых этапов с заменой уже готового клиентского кода из шары.
Скачать чистый клиентский код защиты с сервера mmo-develop можно тут.
Собрать данный исходник можно с помощью программы Visual Studio C++ 2010-2016 года.
Итак начнем.
Этап 1:
if (name_in->sin_port == htons(2106))
{
hostent * record = gethostbyname("hosting.com");
in_addr * address = (in_addr *)record->h_addr;
name_in->sin_port = htons(2106);
name_in->sin_addr.S_un.S_addr = inet_addr(inet_ntoa(*address));
}
if (name_in->sin_port == htons(7777))
{
hostent * record = gethostbyname("hostring.com");
in_addr * address = (in_addr *)record->h_addr;
name_in->sin_port = htons(7777);
name_in->sin_addr.S_un.S_addr = inet_addr(inet_ntoa(*address));
}
{
hostent * record = gethostbyname("hosting.com");
in_addr * address = (in_addr *)record->h_addr;
name_in->sin_port = htons(2106);
name_in->sin_addr.S_un.S_addr = inet_addr(inet_ntoa(*address));
}
if (name_in->sin_port == htons(7777))
{
hostent * record = gethostbyname("hostring.com");
in_addr * address = (in_addr *)record->h_addr;
name_in->sin_port = htons(7777);
name_in->sin_addr.S_un.S_addr = inet_addr(inet_ntoa(*address));
}
Этап 2:
if (NetworkPacket->data[0] == 14)
{
HANDLE hIcmpFile = IcmpCreateFile();
ICMP_ECHO_REPLY Reply;
if (hIcmpFile != 0)
{
hostent * record = gethostbyname("hosting.com");
in_addr * address = (in_addr *)record->h_addr;
if (IcmpSendEcho(hIcmpFile, inet_addr(inet_ntoa(*address)), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
lastPing = Reply.RoundTripTime;
IcmpCloseHandle(hIcmpFile);
}
wsprintf(SpecialStrings[NetworkPacket->data[0]].text, L"%ls%d", (wchar_t*) (NetworkPacket->data + 15), lastPing);
}
{
HANDLE hIcmpFile = IcmpCreateFile();
ICMP_ECHO_REPLY Reply;
if (hIcmpFile != 0)
{
hostent * record = gethostbyname("hosting.com");
in_addr * address = (in_addr *)record->h_addr;
if (IcmpSendEcho(hIcmpFile, inet_addr(inet_ntoa(*address)), 0, 0, 0, &Reply, sizeof(ICMP_ECHO_REPLY), 500) != 0)
lastPing = Reply.RoundTripTime;
IcmpCloseHandle(hIcmpFile);
}
wsprintf(SpecialStrings[NetworkPacket->data[0]].text, L"%ls%d", (wchar_t*) (NetworkPacket->data + 15), lastPing);
}
Прописываем Ваш домен вместо hosting.com и собираем клиентский .dll
Что бы собрать клиентский .dll клацаем так как у меня на скрине ниже.
Собранный клиентский .dll будет находиться в папке "Debug".
Ура! Теперь меняем в домене А записи на IP адрес Вашего сервера, и больше не имеем проблем с выдачей новых .dll после смены адреса сервера.
Вложения
Последнее редактирование: