В некоторых приложениях диалоговые окна Сохранить и загрузить просто не отображаются. И в блокноте (который, очевидно, обрабатывает код возврата) сообщается о проблеме нехватки памяти, что, я уверен, не так; Я думаю, что он предполагает, что ему не хватает памяти, поскольку он не может получить дескриптор окна. В любом случае, что-то определенно не так с Windows, но в журнале событий ничего нет. Есть идеи, почему это может произойти?
1 ответ
Я предполагаю, что Windows XP 32-разрядная с более чем 2 ГБ оперативной памяти. Кажется, есть проблемы в Windows, где она ошибочно сообщает, что ей не хватает памяти, хотя на самом деле больше, чем нужно. Это связано с использованием целого числа со знаком вместо целого без знака для измерения объема ОЗУ (вы знаете, те сравнения со знаком без знака, о которых предупреждают компиляторы).
Вы должны либо удалить ОЗУ, пока у вас не будет 2 ГБ или меньше, либо вам нужно расширение физического адреса (PAE). В качестве альтернативы, если вы компилируете программу, вы можете сообщить ей о более чем 2 ГБ ОЗУ, используя флаг компоновщика /LARGEADDRESSAWARE для компоновщика Microsoft, но это не проблема, упомянутая здесь. [источник]
Вы также можете попытаться обновить Windows XP до последней версии, которая может содержать обновленные двоичные файлы, осведомленные о больших адресах, что решило бы проблему. В boot.ini также есть параметры /3GB, /4GB и /PAE, которые сообщат системе о том, что она использует более 2 ГБ ОЗУ.
Я надеюсь, что это решает проблему. Вы также можете попытаться перейти на 64-разрядную версию операционной системы, но это не всегда вариант из-за финансовых затрат на некоторые операционные системы и из-за доступности некоторых драйверов.
РЕДАКТИРОВАТЬ: я забыл упомянуть, что вы также можете попытаться увеличить размер файла подкачки. Это может помочь, особенно если размер файла подкачки составляет 2 ГБ, а объем оперативной памяти увеличен без изменения размера файла подкачки.