FIX: Unable to Communicate to Multiple IE 3.x Threads via DDEID: Q167821
|
An application can successfully establish a DDE communication with every Internet Explorer 3.x process, but not to subsequent IE 3.x threads spawned from that process.
Internet Explorer 3.x's DDE implementation does not support multiple threads.
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug was corrected in Microsoft Internet Explorer 5.
A distinction needs to be made between an Internet Explorer 3.x process and
an Internet Explorer 3.x thread. A new Internet Explorer 3.x process is
launched every time Internet Explorer 3.x is launched from the Windows
shell. On the other hand, a new Internet Explorer 3.x thread is spawned
from the same process every time a user selects File.New Window from the
Internet Explorer menu.
Internet Explorer 3.x's DDE implementation calls DdeInitialize() once per
process, not per thread. The application instance identifier returned in
the pidInst parameter of the DdeInitialize function is local to the calling
thread.
Because of this, no DDE conversation is established with subsequent threads
spawned from an Internet Explorer 3.x process.
application Name = iexplore,
-and-
topic Name = WWW_RegisterUrlEcho
As a result, GENERIC can be notified of URLEcho events whenever a URL gets loaded in Internet Explorer 3.x.
Q94091 DDEML Application-Instance IDs Are Thread Local
Additional query words:
Keywords : kbIE300bug kbIE301bug kbIE302bug kbIE500fix
Version :
Platform :
Issue type : kbbug
Last Reviewed: April 8, 1999