PRB: DDE with Internet Explorer Doesn't Work As Expected
ID: Q167826
|
The information in this article applies to:
-
Microsoft Internet Explorer (Programming) versions 3.0, 3.01, 3.02, 4.0, 5.0
SYMPTOMS
When executing a DDE transaction with Internet Explorer (16-bit or 32-
bit), Internet Explorer does not seem to communicate to the application as expected.
CAUSE
Internet Explorer's DDE implementation is based upon the Spyglass SDI spec,
which mandates that all specified quoted strings use the \" character
combination. Not correctly prefixing a string with the \" character
combination when IE expects a quoted string, could cause this problem.
RESOLUTION
When specifying a quoted string, whether as an application, topic, item
name, or as an argument, always use the \" character combination.
STATUS
This behavior is by design.
MORE INFORMATION
The Spyglass SDI specification defines a standard notation to indicate
argument types. Specifically, all names prefixed with qs, indicating a
quoted string, should use the \" character combination to embed a quote
character within a quoted string.
To obtain more information on the standard notation for various other
argument types, please refer to the "Notation" section of the Spyglass SDI
specification.
Steps to Reproduce Behavior
- Establish a DDE communication with Internet Explorer, specifying the following:
application Name: iexplore
topicName: WWW_RegisterURLEcho
- Note how the Spyglass SDI specification specifies the arguments for
this particular topic:
RegisterURLEcho ( TO Web browser )
Topic: WWW_RegisterURLEcho
Item: qsApplication
Transaction: XTYP_REQUEST
Data: bSuccess
Note how the ItemName specified is prefixed with qs, indicating a quoted string, as described above.
- Set up an XTYP_REQUEST transaction with DdeClientTransaction,
specifying:
itemName: \"DDESERVER\"
This should cause the DDESERVER application to be notified of
URLEcho events, as specified in the Spyglass SDI specification. Note
That incorrectly specifying "DDESERVER" without the \" character
combination required of quoted strings causes no such notifications to
be sent to the DDESERVER application.
For the WWW_OpenUrl topic, where specifying a URL string should cause IE to
navigate to the specified URL, incorrectly specifying the string (that is,
without the expected \" character combination) causes IE to not interpret
the parameters correctly, thereby not causing it to navigate to the URL.
For additional information, please see the following article in the
Microsoft Knowledge Base:
Q160957 DDE with Internet Explorer
Additional query words:
Keywords : kbIE300 kbIE301 kbIE400 kbIE302 kbIE500
Version : 3.0 3.01 3.02 4.0 5.0
Platform : WINDOWS
Issue type : kbprb