The Scenario
You’re halfway through setting up a new dev environment—perhaps you're 10 minutes into a bulky .NET 8 SDK or Android Studio installation—when everything grinds to a halt. A popup appears: Error 1618. This usually happens right when you're facing a 5 PM deployment deadline.
Error 1618. Another installation is already in progress. Complete that installation before proceeding with this one.
Windows Installer (msiexec.exe) is a bit of a loner. It is hard-coded to handle only one .msi or .msp package at a time. If a background process is already using the service, your current task is stuck in the queue.
Why does this happen?
The Windows Installer service uses a global mutex. Think of this as a physical key; only one process can hold it to modify the system registry or file system. This prevents two different installers from trying to write to the same registry hive simultaneously, which would cause system corruption.
Common triggers for this lock include:
- Silent Windows Updates: This is the most likely culprit. Windows might be installing a 200MB security patch in the background without telling you.
- Zombie Processes: A previous installation crashed, but
msiexec.exestayed alive in the background, refusing to release the lock. - Auto-Update Services: Apps like Google Chrome or Adobe Acrobat often trigger mini-installers that claim the mutex for 30–60 seconds.
Quick Fix: Force-Stop the Stuck Processes
If no visible installation is running, you can manually release the lock by killing active installer instances. This takes about five seconds and usually saves you from a full reboot.
Open PowerShell as an Administrator and run this command:
taskkill /F /IM msiexec.exe
This command forcefully terminates the installer engine. If you see a message saying the process wasn't found, the lock might be held by the TrustedInstaller service instead of a standard user process.
The Reset Method: Restart the Installer Service
Sometimes the process dies, but the service state remains stuck in "Pending." You need to kickstart the Windows Installer service (msiserver) to refresh its status.
- Press
Win + R, typeservices.msc, and hit Enter. - Locate Windows Installer in the list.
- Right-click it and select Stop.
- Once it stops, right-click again and select Start.
Prefer the command line? Run these two commands in an elevated prompt:
net stop msiserver
net start msiserver
Check for Windows Update Interference
If the error returns immediately, Windows Update is likely the one holding the mutex. Windows Update uses the TrustedInstaller service, which has higher priority than your manual installation.
Check the service status via PowerShell:
Get-Service -Name wuauserv
If the status is Running, open your Windows Update settings. If you see a progress bar like "Installing - 45%", you simply have to wait. Do not force-kill Windows Update during a kernel or driver update, as this can lead to a Blue Screen of Death (BSOD) or a corrupted OS.
Advanced: Clear Pending File Operations
In rare cases, a previous installer marks files to be renamed or deleted only after a reboot. This flags the system as "busy" indefinitely. If you cannot reboot right now, you can clear these flags in the Registry Editor.
- Open
regedit.exe. - Navigate to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager - Look for the value
PendingFileRenameOperations. - Back up the key by exporting it, then delete the string contents of that value.
Note: Only use this as a last resort. This value often contains critical driver updates that need to finalize.
Verification: Confirming the Fix
Before you restart a 2GB SDK installation, verify the installer engine is actually free. Run this command:
msiexec /query
If a small help window appears with version info, the engine is ready. Now, run your installer with logging enabled to catch any other hidden errors:
msiexec /i "your_installer.msi" /L*V "install_log.txt"
If the setup UI appears, you have successfully cleared the 1618 mutex lock.

