Unlocking oci.dll and friends when upgrading or patching oracle

The problem of oracle dll files being still active (and locked against modification) inspite of a clear shutdown of all oracle services on windows has been around for lightyears it seems.

What changes, though, is the net of dependencies that has to be checked prior to an upgrade or patch execution to find the processes that actually keep hooking up the dll’s in question. I was hit again lately, when trying to apply the server Patch 18 (the APR2013 bundle patch) on win x64. The infamous error message on executing opatch apply read:

e:\_downloads\p16345834_112030_MSWIN-x86-64\16345834>opatch apply
Oracle Interim Patch-Installationsprogramm Version
Oracle Home       : e:\oracle\product\11.2.0\dbhome_2
Central Inventory : C:\Program Files\Oracle\Inventory
Verifying environment and performing prerequisite checks...
Prerequisite check "CheckActiveFilesAndExecutables" failed. The details are:
Following files are active :
Recommended actions: OPatch needs to modify files which are being used by some processes.
OPatch failed with error code = 41