Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIDnDDataObject_win.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIDnDDataObject_win.cpp	(revision 59834)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIDnDDataObject_win.cpp	(revision 59835)
@@ -255,6 +255,7 @@
                    )
                 {
-                    strMIMEType = "text/plain"; /** @todo Indicate UTF8 encoding? */
-                    vaType = QVariant::String;
+                    /* Use UTF-8, always. */
+                    strMIMEType = "text/plain;charset=utf-8";
+                    vaType      = QVariant::String;
                 }
                 else if (   (pFormatEtc->tymed & TYMED_HGLOBAL)
@@ -435,5 +436,5 @@
                         }
                     }
-                    else if (   strMIMEType.startsWith("text/plain")
+                    else if (   strMIMEType.startsWith("text/plain;charset=utf-8") /* Use UTF-8, always. */
                              && m_vaData.canConvert(QVariant::String))
                     {
@@ -443,9 +444,10 @@
 
                         QString strText = m_vaData.toString();
-                        size_t cbSrc = strText.length() * cbCh;
-                        Assert(cbSrc);
-                        LPCVOID pvSrc = fUnicode
-                                      ? (void *)strText.unicode()
-                                      : (void *)strText.toUtf8().constData();
+                        size_t cbSrc    = strText.length() * cbCh;
+                        LPCVOID pvSrc   = fUnicode
+                                        ? (void *)strText.unicode()
+                                        : (void *)strText.toUtf8().constData();
+
+                        AssertMsg(cbSrc, ("pvSrc=0x%p, cbSrc=%zu, cbCh=%zu\n", pvSrc, cbSrc, cbCh));
                         AssertPtr(pvSrc);
 
