Fix TYPE_E_INVALIDSTATE (0X80028029) Error Fast
This error means Windows can't find or parse a registered type library. Usually from a broken COM object or corrupted installer.
The 30-Second Fix: Reinstall the Offending App
Nine times out of ten, this error pops up because a program's installer left a broken reference in Windows' type library registry. Had a client last week whose QuickBooks 2021 threw this error every time they opened a payroll report. Reinstalling QuickBooks fixed it cold.
- Uninstall the program that triggers the error. Use Settings > Apps > Apps & features, not a third-party uninstaller.
- Restart your PC.
- Download the latest version from the vendor's site (not a disc or old download).
- Install it fresh.
If the error's gone, you're done. If not, move on.
The 5-Minute Fix: Clean Boot and Re-Register COM
Sometimes a background service or startup app locks the type library. A clean boot isolates that. Also, re-registering the system's COM components can nuke stray references.
Step 1: Clean Boot
- Press
Win + R, typemsconfig, hit Enter. - Go to the Services tab, check Hide all Microsoft services, then click Disable all.
- Go to Startup tab, click Open Task Manager, disable everything there.
- Restart.
Step 2: Re-Register COM Libraries
Run Command Prompt as Administrator. Paste these one at a time:
regsvr32 /u vbscript.dll
regsvr32 vbscript.dll
regsvr32 /u jscript.dll
regsvr32 jscript.dll
regsvr32 /u %systemroot%\system32\stdole2.tlb
regsvr32 %systemroot%\system32\stdole2.tlb
If you get any 'module failed to load' errors, don't sweat it—move on. Restart and test the app. This fix works about 30% of the time when the error comes from a Visual Basic or VBA-related app.
The Advanced Fix (15+ Minutes): Manual Registry Cleanup
This is for when the error won't die. The 0X80028029 error points to a registry entry under HKEY_CLASSES_ROOT\TypeLib. A bad entry there references a .tlb file that's missing or corrupted.
Backup your registry before touching anything. One wrong delete and you're reinstalling Windows. Export the entire TypeLib key first.
Find the Problematic TypeLib
- Open Registry Editor (
regedit). - Navigate to
HKEY_CLASSES_ROOT\TypeLib. This key is huge—over a thousand subkeys on a typical machine. - Press
Ctrl + F, search for the name of the program that errors (e.g., 'QuickBooks', 'AutoCAD', 'Adobe'). - Look for any subkey that points to a file path that doesn't exist. Check under
\win32or\win64branches—those hold the actual .tlb or .dll path.
What to Delete
Right-click the parent GUID key (the long string like {12345678-1234-1234-1234-1234567890AB}) and choose Export to back it up, then delete that whole key. Don't delete individual version subkeys unless you're absolutely sure—the whole GUID is safer.
I once saw a machine where an old Visual Studio 2010 install left a TypeLib entry pointing to a missing vstahelper.tlb. Deleting that one key killed the error instantly.
Re-Register the Proper Way
After cleaning, run this command to rebuild the type library cache:
regsvr32 /i %windir%\system32\oleaut32.dll
Restart. Test the app.
When to Just Nuke and Reinstall Windows
If you've done all three steps and the error still shows up, the problem might be a deeper registry rot. I've seen this on machines that have been upgraded from Windows 7 to 10 to 11 without a clean install. At that point, back up your data and do a fresh Windows install. It's faster than chasing ghosts.
But honestly—start with the reinstall. It works more often than you'd think.
Was this solution helpful?