... содержащий большие блоки неинициализированных данных. Можно конечно выделять память динамически при загрузки приложения. Скорее всего так и сделаю, но все-таки, может есть там какой то волшебный флаг командной строки? Долго - это больше 10 минут. Батник: Code (Text): \masm32\bin\rc /v rsrc.rc \masm32\bin\cvtres /machine:ix86 rsrc.res \masm32\bin\ml /c /Cp /Gz /Ic:\masm32\include /coff /nologo ****.asm if errorlevel 1 goto err \masm32\bin\link /SUBSYSTEM:WINDOWS /LIBPATH:c:\masm32\lib /nologo ****.obj ****.res if errorlevel 1 goto err В коде: Code (Text): .data? _bFuncCodeBase db 00a00000h dup(?)
00h это вообщем не проблема - память действительно лучше выделять динамически чем гонять масм в бессмысленных циклах по пересчету места неинициализированных блоков
Ну я уже переписал код, хотя и не согласен, что это "правильно" - если формат предоставляет нам возможность указывать виртуальный размер секции - это надо использовать, ведь я так понимаю с точки зрения исполнения рациональнее выделить память 1 раз. Другое дело, что MASM на этом начинает тормозить, и это беда именно MASM'а, тот же FASM спокойно это глотает.
Есть такой прикол у масма. Нужно иметь очень большое терпение компилировать файлы со специально подготовленными блоками данных (например зашифрованными)