EXE-файлы большого размера
Собственно проблема в следующем: Не запускаются приложения большие приложения (самораспаковывающиеся архивы, что вин рар, что 7-зип). Пишет, что не является приложением Win32.
но файл 100% нормальный, архиватором открывается без проблем за 1 секунду и проходит тест без ошибок
Отсюда вопрос: в чём проблема? У меня есть два варианта. Либо это ограничение 32-х разрядной ОС, адресующей не более 2 гб, либо не хватает ОЗУ (всего 3 гб) для открытия приложения такого размера (4,36 гб). Но я больше склоняюсь ко второму варианту, так как помню свой старый комп с Win 98 SE с 256 мб ОЗУ, на котором точно так же не захотел запускаться самораспаковывающийся архив размером что-то около 400 мб.
Johny-electric писал:либо не хватает ОЗУ (всего 3 гб) для открытия приложения такого размера (4,36 гб).
Ты о такой вещи как виртуальная память/win3.x: 386part.par/Win9x: win386.swp/WinNT: pagefile.sys когда нибудь слышал? ;)
arseny1992, тогда в чём дело? Почему не запускаются исполнямые файлы, размер которых превышает размер ФИЗИЧЕСКОЙ памяти?
А эти файлы скачаны с инета или созданы тобой? Если скачаны с инета, то надо зайти в их свойства и нажать Unblock. Т.к. при запуске таких файлов винда проверяет их цифровую подпись. Может быть из-за этого, хотя не 100%
Johny-electric, сжал через winrar большую папку, он мне выдал:
Слишком большой SFX-архив. Windows не может запускать исполняемые файлы размером более 4 Гбайт.
Lico, а Вы это делали на x86 или x64 системе/WinRAR? Думаю, что тут та же история, что и с 4 ГБ ОЗУ на x86-системах. Последняя версия WinRAR (3.90) идёт в двух варинтах - x86 и x64.
У меня на 64 Висте и Семерке никогда таких проблем не было (4 ГБ ОЗУ на борту).
Это может быть ограничением именно 32 битной ОС.
Sgt.Riggs, x64, а вот полученный sfx-модуль - x86, именно поэтому и вступает ограничения на 4 гигабайта.
Архив этот я создавал сам.
Lico писал:sfx-модуль - x86, именно поэтому и вступает ограничения на 4 гигабайта
А почему 4 гб? Исходя из
Johny-electric, а причем тут выделяемая память и структура исполняемого файла?
Если исполняемый файл весит больше 4 гигабайт, то смещения (левый столбик) у него как бы кончаются, не знаю, как это словами выразить )
Lico, вот и я не могу словами выразить). Я себе представляю, что система, запуская исполняемый файл, как бы копирует его в ОЗУ (брр...) и если файл больше, чем вся ФИЗИЧЕСКАЯ память, то система его не может зохавать). Я глупость сморозил?
Johny-electric, ога ) это было бы капец как долго ) при запуске прогружается заголовок файла и нужные секции, а затем уже по мере работы подгружаются необходимые данные.
Lico, теперь понятно). Вывод: 32-х разрядные исполняемые файлы для корректной работы должны быть меньше 4 гб. Причём не важно, под скольки разрядной ОС их запускать. Отсюда следует, что создать SFX-архив размером больше 4 гб для распаковки на системе без архиватора (в этом весь смысл SFX-архива) не получится. Вернее получится, но он не будет работать. А создавать многотомные SFX-архивы 7-Zip пока не научили.
Johny-electric, дак как бы флешку форматируем в NTFS, ложим 7z архив и установщик 7zip и небольшой мануал для "самых умных" по установке. Проблем не вижу.
Lico, а если флешку носят на работу, где установлена Windows 98 SE и нельзя устанавливать софт? Она с NTFS не дружит. Это не решение проблемы...