That VB.Printer was interesting. I coded the project to use a class' default interface methods when there is no default events interface. However, VB.Printer does have a default events interface, but that interface has no methods/events! So, I tweaked my copy of the code to use the default interface when there is no default events interface or that interface has no methods - problem solved.
Regarding your latest examples. I cannot reproduce the problem here, but I know my code & yours are no longer exactly the same. Here is something you can try to narrow down the problem. In the pvProcessWordList routine, immediately after the FOR statement, add a line like this:
If m_Words(m_WordLstIdx).List(n) = "MyClass1.DoSomething" Then Stop
now you can walk the routine a bit to see what happens. If the For/Next loop exits with rsIndex having a value > 1 then the item wasn't found - which should be the problem.
I've posted my current code below. But I'll take it down later -- it's not ready yet & still has some test code in it. If you can reproduce the problem with the latest code, please let me know. Thank you in advance
** attachment removed **