Download

Shared runtimes: simple rules

How to avoid breaking other apps when cleaning redistributables.

Shared runtimes are the silent dependencies of dozens of programs. Visual C++ redistributables, .NET targeting packs, OpenCL runtimes, and audio middleware often live under Program Files\Common Files or well-known registry hives. Uninstalling “your” app does not mean those files became orphans—they may still be load-order dependencies for games, CAD tools, or line-of-business software you forgot was installed.

The “Common Files” pause

If a leftover row points at a path that clearly names another product family, skip it. If the path is generically named but sits in a shared vendor tree, search the DLL or folder name plus “used by” before you tick the box. Games and creative suites are especially sensitive to missing VC++ packages that look identical in the list except for version numbers.

Practical rules

  • Never bulk-remove every Visual C++ package on a shared PC “to save space”—you will trade megabytes for random launch failures.
  • Prefer removing folders that still carry the uninstalled product’s branding under its old install root before touching shared trees.
  • When two rows disagree, trust the vendor uninstaller’s log and your own notes over a hunch.

Mindset

Revo’s scan is a magnifying glass, not a verdict. The safest batch uninstall is still the one where every line has a human reason. If you cannot articulate why a row should go, leave it for a second pass after more research.

Side-by-side installs of the “same” runtime year

Microsoft ships multiple Visual C++ redistributables because binaries link against different minor toolsets. Two entries that look redundant in plain English may not be redundant at the PE import level. Uninstall only the row that clearly belongs to the removed product’s private folder, not every VC++ entry with a similar year.

.NET and Windows optional features

Some .NET targeting packs and optional Windows features show up as separate programs. Removing them to “save space” can break in-house tools that still target an older framework. Check dotnet --list-runtimes on dev machines before you treat “Microsoft .NET” rows as junk.

Quick answers

I see ten “Microsoft Visual C++” entries. Delete all?
Almost never on a shared PC. Remove only packages tied to the app you uninstalled if the vendor explicitly says so, otherwise leave them.
A game stopped launching after I cleaned “redistributables.”
Reinstall the game’s verified dependencies from the publisher or run the game platform’s repair. Note which VC++ version the error names.
Does “shared DLL” mean safe to delete from the app folder?
No—some apps ship private copies beside their EXE. Judge by path and uninstall scope, not the word “redistributable” alone.

Keep going: When runtimes overlap, optimize for “still launches Monday morning” over reclaiming the last hundred megabytes. See the features overview and guides for conservative cleanup after uninstalls.

← All blog posts