HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

GlobalMemoryStatus и ОЗУ 4 гб
  #1  
Старый 02.10.2009, 17:39
fire64
Участник форума
Регистрация: 01.04.2008
Сообщений: 200
С нами: 9531722

Репутация: 39
По умолчанию GlobalMemoryStatus и ОЗУ 4 гб

при запуске программы на компьютере с 4 гигами памяти появлялось ошибка

"Available memory less than 15mb!!! -1310720"

декомпиляцуия позволила узнать причину

GlobalMemoryStatus возвращает отрицательное количество памяти

PHP код:
  struct _MEMORYSTATUS Buffer// [sp+18h] [bp-20h]@1

  
Buffer.dwLength 32;
  
GlobalMemoryStatus(&Buffer);
  
v0 Buffer.dwTotalPhys;
  
dword_2042D298 Buffer.dwTotalPhys;
  if ( (
signed int)Buffer.dwTotalPhys 15728640 )
  {
    
sub_20101560((int)"Available memory less than 15MB!!! %i\n"SLOBYTE(Buffer.dwTotalPhys));
    
v0 Buffer.dwTotalPhys;
  } 
 
Ответить с цитированием

  #2  
Старый 02.10.2009, 18:20
[QwyZ]
Banned
Регистрация: 07.07.2009
Сообщений: 109
С нами: 8866532

Репутация: 67
По умолчанию

i?
 
Ответить с цитированием

  #3  
Старый 02.10.2009, 18:26
fire64
Участник форума
Регистрация: 01.04.2008
Сообщений: 200
С нами: 9531722

Репутация: 39
По умолчанию

вопрос как сделать так что бы не было ошибки ?
 
Ответить с цитированием

  #4  
Старый 02.10.2009, 18:35
Ra$cal
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
С нами: 10386906

Репутация: 599


По умолчанию

вариант номер раз - пропатчить переход, чтобы управление никогда не попадало в этот блок
вариант два - изменить код проверки, сделав сравниваемые числа беззнаковыми.
еще можно вообще убить вызов GlobalMemoryStatus. Вообще все ограничивается только фантазией. Или не понятно как это сделать технически? Hiew и прочие hex редакторы с поддержкой дизассемблирования.
 
Ответить с цитированием

  #5  
Старый 02.10.2009, 19:03
M_script_
Постоянный
Регистрация: 29.10.2008
Сообщений: 306
С нами: 9227388

Репутация: 180
По умолчанию

вариант номер три - запостить тему вместе с линком на программу в разделе "Реверсинг"
 
Ответить с цитированием

  #6  
Старый 02.10.2009, 21:44
fire64
Участник форума
Регистрация: 01.04.2008
Сообщений: 200
С нами: 9531722

Репутация: 39
По умолчанию

всем спасибо уже сам разобрался

заменил JGE на JMP и тем самым обошел проверку
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
4 и более GB ОЗУ для ОС Windows (32/64) NetSter "Железо" 10 28.12.2009 20:11
Конфликт озу bogger Болталка 8 05.04.2009 13:49
трабла с ОЗУ m0sk "Железо" 12 12.12.2008 21:16
Windows ХР с частотой 25 МГц и 18 Мб ОЗУ exe0n Болталка 3 22.01.2006 06:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.