Logo
live-news-icon

Noticias

Tema: Fix abrir Launcher automático ao executar o main diretamente

Applayo

  • *

Bom... Eu fiz esse código baseado na função original que vem nos Main. Naturalmente, ao executar o Main direto, um arquivo "Mu.exe" (talvez seja o Launcher de quem fez o código) deveria ser executado no lugar dele, no entanto, nada acontece, mesmo que vc renomeie seu Launcher para "Mu.exe".

Então fiz esse código que deve ser executado no inicio desta função para corrigir isso. Não está muito bom, mas é funcional e bem simples, quem quiser pode estar melhorando a sua maneira, como por exemplo, colocar para iniciar um arquivo que faz update do cliente, ou ainda usar a função CreateProcess. Enfim.

O que o código faz?
Ao abrir o Main diretamente, ele iniciará o Launcher automaticamente e encerrará o processo do Main. Forçando o usuário a abrir o jogo pelo Launcher.

Caso o Launcher não seja encontrado no diretório, ao invés de não fazer nada, ele emite um alerta avisando que o jogo não pode ser iniciado pq o Launcher está faltando.



É um código simples, mas bem util e bem melhor do que usar um JMP como já vi em várias sources.

Código:
Código: [Seleccionar]
bool ReadyLauncher()
{
    FILE* FileCheck = NULL;

    if ((FileCheck = fopen("Launcher.exe", "rb")) == NULL)
    {
        MessageBoxA(NULL, "O jogo não pode iniciar por que o Launcher não foi encontrado", "Error!", MB_OK | MB_ICONSTOP);
        ExitProcess(NULL);
        return FALSE;
    }

    WinExec("Launcher.exe", SW_SHOW);

    return TRUE;
}

Créditos: Romário Leite

robins1998

  • *
Re: Fix abrir Launcher automático ao executar o main diretamente | Respuesta #1 en: Mayo 27, 2021, 02:28:31 am »

Very helpful, thanks for sharing.


Responder Marcar No Leido Enviar Topic Print