> > It does, but I suspect VB will refuse to compile if I try to change
> > the signature. This is what is so infuriating - if this were a normal
> > DLL interface, I could use a BYTE * and a VB Byte()... but since it's
> > COM / Automation I'm forced to use a subset of types and they don't
> > seem to support anything useful for an array of bytes. You may
> > remember me trying an ordinary DLL interface before and finding it
> > slow. Hence, trying by OCX instead {:v)
>
> Well, have you tried it actually? I have a vague picture in my mind which
> shows that VB may handle typed arguments better than non-typed ones. Of
> course I may be wrong, but it's still worth trying even as a last resort.
I never got as far as testing this possibility - I had opened up the
question to a less appropriate MS group after the OLE ones came up blank,
and before reading this reply of yours I got an answer from there - and we
have finally found out what I did wrong.
The article which covers my symptoms and explains how to overcome it is
here:
http://www.mvps.org/vcfaq/com/1.htm
I have converted it to create a hidden window from the control's thread
context and now post the message to that from the worker thread, before
letting it grab the control and fire the event, and finally all is well! (I
think!)
Thanks very much for your help Ehsan... without you and others coming back
to me on this I might have just given up and never found the reason.
--
Jason Teagle
[EMAIL PROTECTED]