quickxd 1
quickxd
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Scarlet 1
Scarlet
Bvural41 1
Bvural41
mavzermete 1
mavzermete
Hikaye Ekle

Errorlog.txt düzeltme

  • Konuyu başlatan Konuyu başlatan Aominechi
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 4
  • Görüntüleme Görüntüleme 598

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

EterBase/error.cpp aç

Ben github kullanıyorum github kullanırken başıma cok bela oluyodu bu txt güncellemeler sırasında bu şekilde bi çözüm uyguladım.
ErrorLog_04-02-2024_03-17-18.txt

C++:
BUL:
LONG __stdcall EterExceptionFilter(_EXCEPTION_POINTERS* pExceptionInfo)
KOD BLOGUNU DEĞİŞTİR:
LONG __stdcall EterExceptionFilter(_EXCEPTION_POINTERS* pExceptionInfo)
{
    HANDLE hProcess = GetCurrentProcess();
    HANDLE hThread = GetCurrentThread();

    time_t rawtime;
    struct tm* timeinfo;
    char buffer[80];
    time(&rawtime);
    timeinfo = localtime(&rawtime);
    strftime(buffer, sizeof(buffer), "errorlog\\ErrorLog_%d-%m-%Y_%H-%M-%S.txt", timeinfo); // errorlog klasörünü oluştur

    FILE* fException = fopen(buffer, "wt");
    if (fException)
    {
        char module_name[256];
        time_t module_time;

        HMODULE hModule = GetModuleHandle(NULL);

        GetModuleFileName(hModule, module_name, sizeof(module_name));
        module_time = (time_t)GetTimestampForLoadedLibrary(hModule);

        fprintf(fException, "Module Name: %s\n", module_name);
        fprintf(fException, "Time Stamp: 0x%08x - %s\n", module_time, ctime(&module_time));
        fprintf(fException, "\n");
        fprintf(fException, "Exception Type: 0x%08x\n", pExceptionInfo->ExceptionRecord->ExceptionCode);
        fprintf(fException, "\n");

        CONTEXT& context = *pExceptionInfo->ContextRecord;

        fprintf(fException, "eax: 0x%08x\tebx: 0x%08x\n", context.Eax, context.Ebx);
        fprintf(fException, "ecx: 0x%08x\tedx: 0x%08x\n", context.Ecx, context.Edx);
        fprintf(fException, "esi: 0x%08x\tedi: 0x%08x\n", context.Esi, context.Edi);
        fprintf(fException, "ebp: 0x%08x\tesp: 0x%08x\n", context.Ebp, context.Esp);
        fprintf(fException, "\n");

        STACKFRAME stackFrame = { 0, };
        stackFrame.AddrPC.Offset = context.Eip;
        stackFrame.AddrPC.Mode = AddrModeFlat;
        stackFrame.AddrStack.Offset = context.Esp;
        stackFrame.AddrStack.Mode = AddrModeFlat;
        stackFrame.AddrFrame.Offset = context.Ebp;
        stackFrame.AddrFrame.Mode = AddrModeFlat;

        for (int i = 0; i < 512 && stackFrame.AddrPC.Offset; ++i)
        {
            if (StackWalk(IMAGE_FILE_MACHINE_I386, hProcess, hThread, &stackFrame, &context, NULL, NULL, NULL, NULL) != FALSE)
            {
                fprintf(fException, "0x%08x\t", stackFrame.AddrPC.Offset);
                EnumerateLoadedModules(hProcess, (PENUMLOADED_MODULES_CALLBACK)EnumerateLoadedModulesProc, &stackFrame.AddrPC.Offset);
                fprintf(fException, "\n");
            }
            else
            {
                break;
            }
        }

        fprintf(fException, "\n");
        fflush(fException);

        fclose(fException);
        fException = NULL;

        WinExec("errorlog.exe", SW_SHOW);
    }

    return EXCEPTION_EXECUTE_HANDLER;
}
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst