Вопрос [closed] Как сделать автоапдейтер лоадера

Участник
Участник
Статус
Оффлайн
Регистрация
18 Май 2023
Сообщения
1,003
Реакции
228
Пытаюсь его СПАСТИТЬ и нихуя не понимаю

Проверка версии есть, но вот новый не скачивается.
Чтобы я не делал, работает все кроме скачивания нового лоадера
C++:
Expand Collapse Copy
BOOL SelfDelete() // ezpasted
{
    TCHAR szFile[MAX_PATH], szCmd[MAX_PATH];

    if ((GetModuleFileName(0, szFile, MAX_PATH) != 0) &&
        (GetShortPathName(szFile, szFile, MAX_PATH) != 0))
    {
        lstrcpy(szCmd, "/c del ");
        lstrcat(szCmd, szFile);
        lstrcat(szCmd, " >> NUL");

        if ((GetEnvironmentVariable("ComSpec", szFile, MAX_PATH) != 0) &&
            ((INT)ShellExecute(0, 0, szFile, szCmd, 0, SW_HIDE) > 32))
            return TRUE;
    }

    return FALSE;
}
bool updateloader()
{

    std::string loadercheck = "1.0"; // Loader Version

    if (loadercheck.empty())
    {
        exit(0);
    }

    std::string str = DownloadURL("checkversion"); // you can use github or smth for it

    string str2(loadercheck);

    if (str.find(str2) != string::npos)
    {
        //up2date    std::cout << green << xorstr_("[+] No Update needen") << std::endl;
    }

    else
    {
        system("cls");

        std::cout << ("Updating Loader..") << std::endl;

        std::string str = DownloadURL("newloader.exe"); // in loader.txt is the actual download link of the loader yes i know as i said its a shit version

        std::string dwnld_URL = str.c_str();

        string dwnload = (dwnld_URL.c_str());



        std::string savepath = "Loader.exe";

        URLDownloadToFileA(NULL, dwnld_URL.c_str(), savepath.c_str(), 0, NULL); // Actual Download of file

        std::cout << ("Update Is Done.. Relaunch Me");

        Sleep(2000);
        SelfDelete(); // calling The self delete function to delte the old loader
        exit(0);
    }

    return true;
}


Да код с UC, но он должен работать
 
Напиши оболочку которая будет получать байты с сервера и запускать их, а основной лоадер переведи в байты, храни и обновляй его на сервере
 
Напиши оболочку которая будет получать байты с сервера и запускать их, а основной лоадер переведи в байты, храни и обновляй его на сервере
Идея в байтах хронить нормальная, но если бы у меня в лоадере была нормальная защита, но по факту у меня из защиты, это комментарии //не крякайте пжпжпж
 
Идея в байтах хронить нормальная, но если бы у меня в лоадере была нормальная защита, но по факту у меня из защиты, это комментарии //не крякайте пжпжпж
:stupid:
 
код с юц скачал)
 
Пытаюсь его СПАСТИТЬ и нихуя не понимаю

Проверка версии есть, но вот новый не скачивается.
Чтобы я не делал, работает все кроме скачивания нового лоадера
C++:
Expand Collapse Copy
BOOL SelfDelete() // ezpasted
{
    TCHAR szFile[MAX_PATH], szCmd[MAX_PATH];

    if ((GetModuleFileName(0, szFile, MAX_PATH) != 0) &&
        (GetShortPathName(szFile, szFile, MAX_PATH) != 0))
    {
        lstrcpy(szCmd, "/c del ");
        lstrcat(szCmd, szFile);
        lstrcat(szCmd, " >> NUL");

        if ((GetEnvironmentVariable("ComSpec", szFile, MAX_PATH) != 0) &&
            ((INT)ShellExecute(0, 0, szFile, szCmd, 0, SW_HIDE) > 32))
            return TRUE;
    }

    return FALSE;
}
bool updateloader()
{

    std::string loadercheck = "1.0"; // Loader Version

    if (loadercheck.empty())
    {
        exit(0);
    }

    std::string str = DownloadURL("checkversion"); // you can use github or smth for it

    string str2(loadercheck);

    if (str.find(str2) != string::npos)
    {
        //up2date    std::cout << green << xorstr_("[+] No Update needen") << std::endl;
    }

    else
    {
        system("cls");

        std::cout << ("Updating Loader..") << std::endl;

        std::string str = DownloadURL("newloader.exe"); // in loader.txt is the actual download link of the loader yes i know as i said its a shit version

        std::string dwnld_URL = str.c_str();

        string dwnload = (dwnld_URL.c_str());



        std::string savepath = "Loader.exe";

        URLDownloadToFileA(NULL, dwnld_URL.c_str(), savepath.c_str(), 0, NULL); // Actual Download of file

        std::cout << ("Update Is Done.. Relaunch Me");

        Sleep(2000);
        SelfDelete(); // calling The self delete function to delte the old loader
        exit(0);
    }

    return true;
}


Да код с UC, но он должен работать
чистить кэш ссылок не пробовал?
 
Может потому что твой запущенный лоудер имеет то же название как ты пытаешься сохранить? И файл лаудера не перезаписывается так как он в данный момент используется
 
пофиксил, код с юц мусор и по итогу написал сам...(хотя что там писать, проверка if else)
 
Назад
Сверху Снизу