I was getting high CPU usage from dllhost.exe recently. I noticed it when my laptop's battery started draining unusually quickly. After trying several things, I logged on as a different user, and the problem went away. So I backed up my documents and settings, blew away my profile, and logged back in. Problem solved.
Or so I thought. After restoring all of my documents, the problem came back.
I discovered it was Windows, trying to index a corrupted video file that was on my desktop. I deleted the corrupted video file, and my CPU usage returned to normal.