Другое С/С++ Вопрос - Ответ

EclipsedFlow

Известный
Проверенный
1,044
484
Выводит какой-то бред, замахался с этим уже, помогите пожалуйста.

C++:
std::ifstream file(license_txt);
    if (file.is_open())
    {
        std::string lines;
        while (std::getline(file, lines)) // Перебирает строки и потом сравнивает с hdd_now
        {
            if (lines == hdd_now) {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки куплена, приятного использования");
            }
            else
            {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки нету, её нужно купить");
            }
        }
        file.close();
    }

Скрин:
1635626871650.png
 

#Rin

Известный
Всефорумный модератор
1,213
1,046
Выводит какой-то бред, замахался с этим уже, помогите пожалуйста.

C++:
std::ifstream file(license_txt);
    if (file.is_open())
    {
        std::string lines;
        while (std::getline(file, lines)) // Перебирает строки и потом сравнивает с hdd_now
        {
            if (lines == hdd_now) {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки куплена, приятного использования");
            }
            else
            {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки нету, её нужно купить");
            }
        }
        file.close();
    }

Скрин:
Посмотреть вложение 119843
Для std::string следует использовать метод .c_str()
C++:
lines.c_str()
Для выводы HDD скорее тебе требуется: "%X"
 

EclipsedFlow

Известный
Проверенный
1,044
484
когда в лог выводишь....
После проверки, 7 строка.
C++:
std::ifstream file(license_txt);
    if (file.is_open())
    {
        std::string lines;
        while (std::getline(file, lines)) // Перебирает строки и потом сравнивает с hdd_now
        {
            if (lines == hdd_now) {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки куплена, приятного использования");
            }
            else
            {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки нету, её нужно купить");
            }
        }
        file.close();
    }
 

kin4stat

mq-team · kin4@naebalovo.team
Всефорумный модератор
2,760
4,891
После проверки, 7 строка.
C++:
std::ifstream file(license_txt);
    if (file.is_open())
    {
        std::string lines;
        while (std::getline(file, lines)) // Перебирает строки и потом сравнивает с hdd_now
        {
            if (lines == hdd_now) {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки куплена, приятного использования");
            }
            else
            {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt, hdd_now, lines);
                msg("Подписки нету, её нужно купить");
            }
        }
        file.close();
    }
C++:
std::ifstream file(license_txt);
    if (file.is_open())
    {
        std::string lines;
        while (std::getline(file, lines)) // Перебирает строки и потом сравнивает с hdd_now
        {
            if (lines == hdd_now) {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt.c_str(), hdd_now.c_str(), lines.c_str());
                msg("Подписки куплена, приятного использования");
            }
            else
            {
                SF->Log("Путь к файлу: %s\nHDD: %s\nТекст: %s", license_txt.c_str(), hdd_now.c_str(), lines.c_str());
                msg("Подписки нету, её нужно купить");
            }
        }
        file.close();
    }
 

EclipsedFlow

Известный
Проверенный
1,044
484
При добавлении этой функции в исполнение, плагин SF не загружается вообще.

C++:
size_t write_data_file(void* ptr, size_t size, size_t nmemb, FILE* stream) {
    size_t written = fwrite(ptr, size, nmemb, stream);
    return written;
} // Доп. функция, строка 14

void download_file()
{
    std::string file_txt = game_directory() + "\\SAMPFUNCS\\lic.txt";

    CURL* curl = curl_easy_init();
    if (curl) {
        FILE* fp = fopen(file_txt.c_str(), "wb");
        curl_easy_setopt(curl, CURLOPT_URL, "url");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data_file);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp);
        CURLcode res = curl_easy_perform(curl);
        SF->Log(curl_easy_strerror(res)); // Вывод лога

        curl_easy_cleanup(curl);
        fclose(fp);
    }
 

F0RQU1N and

Известный
1,295
501
При добавлении этой функции в исполнение, плагин SF не загружается вообще.

C++:
size_t write_data_file(void* ptr, size_t size, size_t nmemb, FILE* stream) {
    size_t written = fwrite(ptr, size, nmemb, stream);
    return written;
} // Доп. функция, строка 14

void download_file()
{
    std::string file_txt = game_directory() + "\\SAMPFUNCS\\lic.txt";

    CURL* curl = curl_easy_init();
    if (curl) {
        FILE* fp = fopen(file_txt.c_str(), "wb");
        curl_easy_setopt(curl, CURLOPT_URL, "url");
        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data_file);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, fp);
        CURLcode res = curl_easy_perform(curl);
        SF->Log(curl_easy_strerror(res)); // Вывод лога

        curl_easy_cleanup(curl);
        fclose(fp);
    }
компиль курл статически
 
  • Нравится
Реакции: EclipsedFlow

EclipsedFlow

Известный
Проверенный
1,044
484
компиль курл статически
Если я думаю правильно где-то была строка со слово Static, после инициализации библиотеки, её нежно добавить или как правильно?
#define CURL_STATICLIB
 
Последнее редактирование:

EclipsedFlow

Известный
Проверенный
1,044
484
  • Bug
Реакции: F0RQU1N and

loganhackerdff

Известный
868
521
Нихера не работает друг, я уже как только не пробовал, failed и все
Значит не правильно ты используеш urldownloadtofile, надо там указывать адрес на файл, чтоб в конце было filename.txt

Там вроде цифру в конце надо менять, ты изменил? Когда с дропбокса качаеш
 

EclipsedFlow

Известный
Проверенный
1,044
484
Как проверить, если точка на экране для рендера, аналог isPointOnScreen() на Lua