2017-02-17 1 views
0

J'essaye d'exécuter une application dos/4gw dans le système d'exploitation Win7 32 bits. Je reçois le message d'erreur suivant, DOS/4GW fatal error (1307): not enough memoryDOS/4GW Erreur fatale (1307): pas assez de mémoire

Lorsque j'exécute la même application dans le système d'exploitation WinXP 32 bits, cela fonctionne correctement et sans problème.

L'application dos/4gw a été créée à l'aide du compilateur Watcom C.

la commande MEM indique la mémoire disponible, suivant,

655360 bytes total conventional memory 655360 bytes available to MS-DOS 580640 largest executable program size 16777216 bytes total EMS memory 16777216 bytes free EMS memory 32505856 bytes total contiguous extended memory 0 bytes available contiguous extended memory 15580160 bytes available XMS memory MS-DOS resident in High Memory Area

De ce qui précède il est clair que la mémoire est inférieure à 1MB. Cependant, mon programme a besoin de plus que cela. Fondamentalement, j'ai besoin d'étendre ma mémoire DOS pour obtenir plus de 1 Mo de mémoire pour l'exécution de mon application dos/4gw.

Quelqu'un peut-il aider à résoudre ce problème de mémoire?

Merci!

-Anand

+0

Oh my .. regarder par la fenêtre, il y a 2017 là-bas. Où avez-vous trouvé cette antiquité? Quoi qu'il en soit, essayez d'utiliser DosBox. –

+0

J'ai aussi essayé DosBox. J'ai besoin d'étendre ma mémoire de plus de 64 Mo pour exécuter mon application sans faille. Cependant DosBox ne supporte pas plus de 64 Mo dans mon système. – Anand

+0

Alors, quelle forme de mémoire étendue le programme utilise-t-il? –

Répondre

0

La réponse à la question est la réponse envoyée par doynax:

"I believe there is a shim in recent versions of Windows limiting the available DPMI memory to 32 MB, for yet more ancient software incapable of unprepared such wast quantities of RAM. You may try creating a DpmiLimit key under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WOW in the registry to adjust this with the limit in bytes as a DWORD"