Форум программистов, компьютерный форум, киберфорум
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
4 / 3 / 6
Регистрация: 13.11.2015
Сообщений: 208
1

Краш при запуске

09.04.2016, 00:55. Просмотров 417. Ответов 2
Метки нет (Все метки)

Здраствуйте. При выполнении ехе файла происходит краш, хотя в студии все нормально скомпилировалось.
C++
1
2
3
DWORD offsets1[] = { 0x6FCF3 };// смещение
DWORD *data_ptr = (DWORD*)mem->ReadPointer(0x3b80000, offsets1, 1);
if (*data_ptr == -1869574000) printf("Да\n"); else printf("Не\n");
C++
1
2
3
4
5
6
7
8
DWORD AC::ReadPointer(DWORD base, DWORD* offsets, int count)
{
    for (int i = 0; i < count - 1; i++)
    {
        base = Read(base + offsets[i], 4).toUINT32();
    }
    return base + offsets[count - 1];
}
Это считывается указатель на адрес процесса, и сравнивание с числом. -1869574000 - число, с которым нужно сравнить полученное из адреса.
Проблема именно где сравнение идет, if (*data_ptr....
Что тут не так? Буду благодарен за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2016, 00:55
Ответы с готовыми решениями:

Краш при запуске
Здравствуйте. После компиляции проекта появляется краш, с сообщением: Необработанное исключение по...

Краш при получении расширения файла
пишу поиск файлов по определенным расширениям. ВАЖНО: пишу без зависимости CRT, поэтому предлагать...

Краш при освобождении памяти через HeapFree()
написал этот код, который находит расширение файла. LPWSTR findExtension(LPCWSTR fileName) {...

При запуске Subnautica происходит краш
При запуске subnautica появляется ошибка Ooops в которой написано: &quot; The game crashed. The crash...

2
С чаем беда...
Эксперт CЭксперт С++
7766 / 3735 / 1023
Регистрация: 18.10.2014
Сообщений: 7,854
09.04.2016, 01:09 2
Цитата Сообщение от Vasiliyy Посмотреть сообщение
При выполнении ехе файла происходит краш
А почему он не должен происходить? Ваша программа пытается читать DWORD с адреса 3BEFCF3. А кто вам сказал, что с этого адреса можно вот так вот что-то читать?
1
4 / 3 / 6
Регистрация: 13.11.2015
Сообщений: 208
09.04.2016, 01:57  [ТС] 3
TheCalligrapher, если сделать вот так:
C++
1
2
3
4
DWORD offsets2[] = { 0x6FD14 };// смещение
DWORD addressdllsamp = (DWORD)getModuleHandleRemote(PID, "samp.dll");// PID процесса
DWORD step2 = mem->ReadPointer(addressdllsamp, offsets2, 1);
printf("Adress: 0x%x / value = %d\n", step2, mem->Read(step2, 16).toUINT64());
C++
1
2
3
4
5
6
UINT64 Anticheat::toUINT64()
{
    UINT64 v = 0;
    memcpy(&v, m_buffer, sizeof(UINT64));
    return v;
}
, то нормально все считывает, после "value = " пишется правильное число. И мне его нужно сравнить с числом -1869574000.
Может вы знаете как иначе можно это сделать? Помогите пожалуйста.

Добавлено через 35 минут
UPD: Решил сам уже, тема не действительна.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2016, 01:57

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Краш при запуске игры с платформой 86_64 на Windows 7 x86
Приветствую! Столкнулся с проблемой при сборке игры на PC. Данные: Windows 7. x86 exe файл...

Краш "Лисички" (Mazilla) при запуске.
Посоветовали обратиться к реестру, а именно HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows...

При запуске из среды программа работает, при запуске выполняемого файла выдает ошибку
Добавлено через 1 минуту 35 секунд как исправить ошибки в названии темы? там должно было быть...

Размер компонентов GUI при запуске jar больше чем при запуске в IDE
Вообщем есть такая вот проблема: Еще с давних пор когда начинал изучать Swing заметил, что при...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.