0X00000480

Fix 0x80000480: Only One Instance of This Program Can Run

Windows says you can only run one copy of a program. Mutex lock is stuck. We'll kill the ghost process, then check for corrupted registry entries.

What's actually happening here

Windows uses something called a mutex (mutual exclusion object) to enforce the "only one instance" rule. When a program starts, it creates a named mutex. If another copy tries to start, Windows sees that mutex already exists and throws 0x80000480ERROR_SINGLE_INSTANCE_APP.

The real issue: the mutex didn't get cleaned up when the program closed. Could be a crash, a hung process, or a leftover kernel handle. The program isn't actually running – but Windows thinks it is.

You'll see this most often with older apps, custom in-house tools, or badly-written installers that spawn a single-instance launcher. I've personally hit it with an old ERP client and a USB driver tool.

Fix 1 – 30 Seconds: Kill the hidden process via Task Manager

You don't need admin rights for this one. Most of the time, the program is running but invisible – no window, no tray icon.

  1. Press Ctrl + Shift + Esc to open Task Manager.
  2. Click More details if you see the compact view.
  3. Go to the Processes tab. Look under Background processes for the program's name.
  4. If you find it, right-click and select End task.
  5. Now try launching the program again.

Didn't see it? Sort by name or look for any process with a suspiciously high handle count. You can also check the Details tab – that lists every running process, even hidden ones.

Why this works: Killing the process forces Windows to release the mutex handle. The next launch sees no existing mutex and creates a new one.

Fix 2 – 5 Minutes: Command-line hunt and kill

Task Manager might not show every process. Some single-instance apps spawn a child process with a different name. We'll brute-force it.

  1. Open Command Prompt as Administrator (right-click Start, select Terminal (Admin)).
  2. Run this to get the app's process ID (replace yourapp.exe with the actual file name):
    tasklist | findstr /i yourapp.exe

    If you don't know the exact name, run tasklist alone and look for anything that matches the program's publisher or description.

  3. Kill it by PID (e.g., PID 1234):
    taskkill /F /PID 1234

    The /F flag forces termination – needed for hung processes.

  4. If that doesn't work, try killing by image name directly:
    taskkill /F /IM yourapp.exe
  5. Now restart the app.

Still getting the error? That means the mutex is orphaned – the process is dead but the kernel object wasn't destroyed. That's a Windows bug. On to the registry fix.

Fix 3 – 15+ Minutes: Registry cleanup for orphaned mutexes

This is the nuclear option. Only do this if Fix 1 and Fix 2 failed and you see the error immediately after a clean system restart. (If you restart and it still happens, the mutex is being created by a driver or a service.)

Backup your registry first, seriously. One typo and you can bork your install. I've done it. It's not fun.

  1. Press Win + R, type regedit, hit Enter.
  2. Go to:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations

    This key sometimes holds stale file lock references. If it exists and has any entries, delete the entire key (back it up first).

  3. Next, check the program's own registry settings. Single-instance apps often store their mutex name somewhere. Search the registry for the app's name or publisher:
    Ctrl+F, type your app name

    Look for keys like MutexName, SingleInstance, or AllowMultipleInstances. If you see a DWORD named something like SingleInstance and it's set to 1, change it to 0. That'll let you run multiple copies – but only if the app checks that flag. Most don't.

  4. If you find nothing useful, you can try deleting the program's entire registry key under HKEY_CURRENT_USER\Software\[Publisher]\[App] and HKEY_LOCAL_MACHINE\Software\[Publisher]\[App]. This will reset all settings – might lose your saved preferences.
  5. Reboot. Test the app.

The reason this sometimes works: Some apps don't use a mutex object at all. They check a registry flag at startup. If that flag is stuck, no amount of process killing will help. By deleting the key, you force the app to recreate it fresh.

When to give up and find a workaround

If none of these fix it, the app is likely checking for a mutex created by a kernel driver or a system service. That's a design flaw, not a user fix. Your options:

  • Run the app in a VM – each VM has its own kernel space, so mutex won't cross over.
  • Use Sandboxie – Can isolate the app's namespace, but YMMV.
  • Contact the vendor – They might have a config switch or patch.

One more thing: if the app is a 16-bit or early 32-bit program from the '90s, Windows 10/11's NTVDM or WOW64 layer sometimes fails to release the mutex on exit. That's a known issue with no real fix. Your only move is to reboot after each use. Annoying, but stable.

TL;DR: Kill the background process with Task Manager (Fix 1). If it's invisible, use taskkill /F /IM yourapp.exe (Fix 2). If it persists after reboot, edit the registry to remove orphaned mutex keys (Fix 3). Last resort: VM or sandbox.

Related Errors in Windows Errors
0XC00A0016 STATUS_CTX_WINSTATION_NAME_COLLISION 0XC00A0016 Fix 0XC00D1BC3 Fix NS_E_INVALID_VIDEO_WIDTH (0XC00D1BC3) Video Width Error 0XC01C0020 STATUS_FLT_NO_WAITER_FOR_REPLY (0xC01C0020) Fix 0XC00D00D4 Windows Media Player NS_E_LICENSE_EXPIRED (0xC00D00D4) Fix

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.