[Solution] Error 0x8007000E Windows 11/10 — Out of Memory Fix

Error 0x8007000E is the Windows E_OUTOFMEMORY error that occurs when the system or an application cannot allocate enough memory to complete an operation. It is a common error on both Windows 10 and 11.

This error affects users during application installs, file operations, and program launches. It typically means your system has exhausted its available RAM or virtual memory pool.

Description

The full error message typically reads:

“Error 0x8007000E. Not enough memory resources are available to complete this operation.”

Error 0x8007000E maps to the COM error code E_OUTOFMEMORY, which means the system failed to allocate a required block of memory. Windows and applications rely on both physical RAM and virtual memory (page file) to handle memory requests. When both are exhausted, this error appears.

The error appears in these common scenarios:

  • Application installation — Installers cannot load required components
  • Large file operations — Copying or moving large datasets fails
  • Program launches — Applications crash immediately on startup
  • Windows Update — Update components run out of memory during download or install
  • Browser tabs — Too many open tabs consume all available memory

Common Causes

  1. Too many applications running simultaneously — Each running program consumes RAM, leaving insufficient memory for new operations.
  2. Insufficient physical RAM — The system does not have enough installed memory for the workload.
  3. Small or missing page file — The virtual memory file is too small or misconfigured.
  4. Memory leaks — A faulty application continuously allocates memory without releasing it.
  5. Malware infection — Malicious processes consume memory in the background.
  6. 32-bit application on 64-bit system — A 32-bit app cannot use more than ~2 GB of RAM even on a 64-bit OS.

Solutions

Solution 1: Close Unused Applications

The quickest fix is freeing up memory by closing programs you are not actively using. Open Task Manager to identify memory-heavy processes:

Get-Process | Sort-Object WorkingSet64 -Descending | Select-Object -First 15 Name, @{N='Memory(MB)';E={[math]::Round($_.WorkingSet64/1MB)}} | Format-Table -AutoSize

Press Ctrl + Shift + Esc to open Task Manager, click the Memory column header to sort by memory usage, and end tasks that are consuming excessive memory.

Solution 2: Increase Virtual Memory (Page File)

If physical RAM is insufficient, increasing the page file size gives Windows more virtual memory to work with:

  1. Press Win + R, type sysdm.cpl, and press Enter.
  2. Go to the Advanced tab.
  3. Under Performance, click Settings.
  4. Go to the Advanced tab and click Change under Virtual memory.
  5. Uncheck Automatically manage paging file size for all drives.
  6. Select your system drive (usually C:) and select Custom size.
  7. Set Initial size to 4096 MB and Maximum size to 8192 MB (or 1.5x your RAM).
  8. Click Set, then OK, and restart your computer.

Using PowerShell to check current page file settings:

Get-WmiObject Win32_PageFile | Select-Object Name, AllocatedBaseSize, CurrentSize, MaxSize

Solution 3: Check Disk Space

The page file requires free disk space on the system drive. If the disk is full, virtual memory cannot expand:

Get-PSDrive -PSProvider FileSystem | Select-Object Name, @{N='Free(GB)';E={[math]::Round($_.Free/1GB,2)}}, @{N='Used(GB)';E={[math]::Round($_.Used/1GB,2)}} | Format-Table -AutoSize

Free up disk space by:

  • Running Disk Cleanup (cleanmgr) to remove temporary files
  • Uninstalling unused applications
  • Moving large files to an external drive
  • Emptying the Recycle Bin

Solution 4: Run Memory Diagnostic

A faulty RAM module can cause memory allocation failures even when sufficient memory appears available:

mdsched.exe

Select Restart now and check for problems. After the restart, check results in Event Viewer under Windows Logs > System with source MemoryDiagnostics-Results.

For more thorough testing, use MemTest86 from a bootable USB and run at least 4 passes.

Solution 5: Scan for Malware

Malicious processes can silently consume massive amounts of memory. Run a full system scan:

Start-MpScan -ScanType FullScan

For a deeper check, use the Microsoft Malicious Software Removal Tool:

mrt.exe

Select Full scan and let the tool complete its check.

Solution 6: Identify and Fix Memory Leaks

If a specific application continuously grows in memory usage, it likely has a memory leak. Monitor it over time:

$proc = Get-Process -Name "YourAppName"
1..10 | ForEach-Object {
    $proc.Refresh()
    [PSCustomObject]@{
        Time = (Get-Date).ToString('HH:mm:ss')
        MemoryMB = [math]::Round($proc.WorkingSet64/1MB, 2)
    }
    Start-Sleep -Seconds 30
}

If memory grows steadily without release, update or reinstall the offending application.

  • Error 0x80070005 — Access Denied error that can co-occur with memory issues during file operations
  • Error 0x80004005 — Unspecified Error, often triggered when memory allocation fails
  • Error 0x80070008 — Not enough memory resources are available to process the command
  • Error 0x8007000C — An error occurred due to an invalid parameter when allocating memory
  • BSOD CRITICAL_PROCESS_DIED — System crash caused by critical process failure, sometimes linked to memory exhaustion

Comments