Send Unicode data as UTF-8 text when using DDE-based IPC
This is a more hackish but more compatible solution to the problem of data sent using wxIPC_UTF8TEXT format being simply lost when using DDE for IPC classes. We must use CF_TEXT for the DDE to pass our data, but we can try to decode it as UTF-8 in the client and assume it was sent in this format if it worked. This obviously suffers from false positives as any ASCII string will still be assumed to be UTF-8, but there shouldn't be any real harm coming from this. This change also makes sending data in wxIPC_UTF{16,32}TEXT formats work as well by converting it to UTF-8. Update the sample to call Advise() with both wxIPC_UTF{8,16}TEXT formats and remove the now unnecessary wxDDEConnection::m_dataType member. Closes #17900.
This commit is contained in:
@@ -70,7 +70,6 @@ public:
|
||||
WXHCONV m_hConv;
|
||||
const void* m_sendingData;
|
||||
int m_dataSize;
|
||||
wxIPCFormat m_dataType;
|
||||
|
||||
wxDECLARE_NO_COPY_CLASS(wxDDEConnection);
|
||||
wxDECLARE_DYNAMIC_CLASS(wxDDEConnection);
|
||||
|
Reference in New Issue
Block a user