.net - system.outofmemoryexception c# solucion
¿Cómo hacer que una aplicación.NET tenga "gran dirección consciente"? (4)
Añada esas líneas a la creación de publicaciones:
call "$(DevEnvDir)../tools/vsdevcmd.bat"
editbin /largeaddressaware "$(TargetPath)"
Suponiendo que haya arrancado un Windows Server de 32 bits con el modificador / 3GB, ¿cómo puedo hacer que una aplicación .NET use el espacio de direcciones adicional?
La bandera es parte del encabezado de la imagen, por lo que debe modificarla usando editbin.
editbin /LARGEADDRESSAWARE <your exe>
Use dumpbin /headers
y busque la presencia de la Application can handle large (>2GB) addresses
para ver si la bandera está configurada o no.
Para hacerlo de forma automática desde Visual Studio, consulte esta pregunta: flag from visual studio .
Por lo que puedo decir, tienes que usar la utilidad editbin que se muestra en la respuesta existente. No parece haber ninguna forma de establecer la bandera con Visual Studio .NET, parece que alientan a las personas a compilar para 64 bits si es posible en lugar de usar la bandera
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=93771