I disabled the automatic minimizing on focus losing. The topmost clip is displayed correctly, until I start MS Excel 2003. Then the clip's icon is immediately changed to Excel regardless of what it has been before. So far I didn't discover any similarly behaving application.-yksyks
Yeah, Excel is an unending nuisance when it comes to clipboard. I cannot reproduce the exact behavior you describe with Excel 2007 on Win7, but in general, it is common to see this happen when Excel runs - so much so there is a long paragraph on that in the Help file (Useful Information -> Bugs and limitations).
In short, there is no way to be sure which application has just copied data to clipboard. You can only guess. Usually a good guess is the application that is active (has focus), because 99% of the time clipboard operations are initiated by the user. If you press Ctrl+C in an app, it has to be the active app, so Echo makes the correct guess, and gets the icon from the correct application.
Problems start when an application changes the clipboard without you doing anything. That's what Excel (sometimes) does. Perhaps version 2003 does that more than 2007. Basically, Echo sits there waiting until Windows tells it that clipboard contents have changed. You start Excel, and Excel rewrites the clipboard all by itself - that's a bad thing to do. Now Echo knows there is a change on the clipboard and when it checks, Excel is the active app, so it updates the new clip (which in this case is the same text that was on clipboard before) and grabs the icon from Excel.
So everything really works as it should: there is a clipboard change, Echo gets the notification and processes it. The problem is, Excel didn't really put anything new on the clipboard and it had no business messing around with it in the first place - but from Echo's point of view, it's just a clipboard change like any other.
There's no obvious solution beyond just giving up on collecting icons (but the source application name will still be changed to Excel, and the clip's date will be updated). I could do some special processing for Excel and ignore the change if the text on clipboard is the same as it was before. That would probably work, but then Echo would drop legitimate copy operations in Excel. For example:
1. You copy a cell in Excel
2. Then you realize you need the cell to be bold, so you press Ctrl+B.
3. Then you copy the cell again.
The workaround would cause Echo to ignore the second copy operation in (3).
Excel 2007 doesn't seem to be causing this problem on startup, but yes, I have seen the icon "shift" in other situations. Sometimes it happens in the opposite direction: you copy something in Excel and Echo catches it. Then you close Excel. As it shuts down, Excel again sometimes modifies the clipboard for no good reason. Echo detects the change, but by that time Excel's window is already gone, and another app's window is active. So Echo gets the icon of some completely unrelated app and replaces Excel icon with it. And again, there's not much I can do if Excel "fakes" a clipboard change just because it is starting or shutting down.