Skip to content

This free RAM cleaner uses native Windows features to optimize memory areas. It's a compact, portable, and smart application.

License

Notifications You must be signed in to change notification settings

IgorMundstein/WinMemoryCleaner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Windows Memory Cleaner

This free RAM cleaner uses native Windows features to clear memory areas. Sometimes, programs do not release the allocated memory, making the computer slow. That is when you use Windows Memory Cleaner to optimize the memory so you can keep working without wasting time restarting your system.

The app has a minimalistic interface and smart features. It's portable, and you do not need to install it, but it requires administrator privileges to run. Click on the download button below and run the executable to get started.

DOWNLOAD

🖥️ Computer requirements

  • Microsoft .NET Framework 4
  • Windows XP Vista 7 8 10 11
  • Windows Server 2003 2008 2012 2016 2019 2022

🚀 Features

Auto optimization

  • Every X hours The optimization will run by period
  • When free memory is below X percent The optimization will run if free memory is below the specified percentage

Compact Mode

  • Arrow (Up/Down) next to the minimize button to collapse and extend the window

Memory Areas

  • Combined Page List Flushes the blocks from the combined page list effectively only when page combining is enabled
  • Modified Page List Flushes memory from the modified page list, writing unsaved data to disk and moving the pages to the standby list
  • Processes Working Set Removes memory from all user-mode and system working sets and moves it to the standby or modified page lists
  • Standby List Flushes pages from all standby lists to the free list
  • Standby List (Low Priority) Flushes pages from the lowest-priority standby list to the free list
  • System Working Set Removes memory from the system cache working set

Multi-Language

  • Albanian Arabic Bulgarian Chinese Dutch English French German Greek Indonesian Irish Italian Japanese Korean Macedonian Persian Polish Portuguese Russian Serbian Slovenian Spanish Turkish Ukrainian

Processes excluded from optimization

  • You can build a list of processes to ignore when memory is optimized

Optimization hotkey

  • Set a keyboard global hotkey to run the optimization. CTRL + ALT + M is the default and customizable value

Settings

  • Always on top Pins the window to the top of all your windows
  • Auto update Keeps the app up to date. It checks for updates every 24 hours
  • Close after optimization Closes the app after optimization
  • Close to the notification area Minimize the app to the system tray when clicking the close (X) button
  • Run on low priority It limits the app resource usage by reducing the process priority and ensuring it runs efficiently. It might increase the optimization time, but it helps if your Windows freezes during it
  • Run on startup Runs the app after the system boots up. It creates an entry on Windows Task Scheduler and Windows Registry path SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
  • Show optimization notifications Sends a message to the notification area after optimization. It includes the approximate memory released
  • Show virtual memory It also monitors the virtual memory usage
  • Start minimized The app will start minimized to the system tray. Single-click on the icon to restore

System tray (Notification area)

  • Menu
  • Notification

Tray icon

  • Image Show app icon
  • Memory usage Show physical memory usage with a background color based on the value
    • (0% - 79%)
    • (80% - 89%)
    • (90% - 100%)

🔳 Command arguments (NO GUI)

You can use the following arguments to run the app silently.

  • /CombinedPageList
  • /ModifiedPageList
  • /ProcessesWorkingSet
  • /StandbyList OR /StandbyListLowPriority
  • /SystemWorkingSet

Shortcut target example

C:\WinMemoryCleaner.exe /ModifiedPageList /ProcessesWorkingSet /StandbyList /SystemWorkingSet

📖 Logs

The app generates logs in the Windows event

  1. Press Win + R to open the Run command dialog box
  2. Type eventvwr and press Enter to open the Event Viewer

❓ Frequently Asked Questions (FAQ)

What are the project requirements?

  • Minimalistic user interface
  • Model-View-ViewModel (MVVM) design pattern
  • No third library or DLL dependencies
  • Portable (Single .exe file)
  • Right-to-left language support and bidirectional text
  • S.O.L.I.D. Principles of Object-Oriented
  • Use of Windows native methods for memory management
  • Windows Event to save logs
  • Windows Presentation Foundation (WPF) for user interface
  • Windows Registry to save user config

Where does the app save the user configuration?

Each user setting is saved in the Windows registry path Computer\HKEY_CURRENT_USER\Software\WinMemoryCleaner

Why has the app been flagged as Malware/Virus and blocked by Windows Defender, SmartScreen, or Antivirus?

One of the reasons for this false alarm is that the application adds entries to the registry and task scheduler to run the application at startup. Windows doesn't “like” applications with administrator privileges running at startup. I understand that, but this is the way to do it. I apologize, but the application cannot deep clean memory without administrator privileges.

That's a common issue that persists every time a new app version is released. I constantly submit the executable to Microsoft. Usually, it takes up to 72 hours for Microsoft to remove the detection. It helps if more users submit the app for malware analysis

Meanwhile, as a workaround, you can add an exclusion to Windows Security

🌐 Translation

If you are a native speaker of any language other than English, you can contribute by translating the file: English.json

💡 You can test any translation by creating a file alongside the executable

  1. Visit https://ss64.com/locale.html to get the locale description of the language
  2. Save it as {locale-description}.json using UTF-8 as character encoding
  3. Launch the application. If successful, the new language and changes will be visible
  4. Either submit a pull request or upload the file to the translation discussion

💡 If you are a .NET developer

  1. You can add the new file to the Resources\Localization folder
  2. Change the file build action property to Embedded Resource
  3. Rebuild and run the WinMemoryCleaner project

💡 Google Translate tool will be used when a new version requires translated text changes. The contributor's efforts to submit updates are always appreciated.

⭐ Contributors