Index: src/ch/MainWnd.cpp =================================================================== diff -u -re667429b5d9008da845b7bd146a2581c38551dfd -r1e067c9bfa3d29a7299317c9a6f782bf2849b9b3 --- src/ch/MainWnd.cpp (.../MainWnd.cpp) (revision e667429b5d9008da845b7bd146a2581c38551dfd) +++ src/ch/MainWnd.cpp (.../MainWnd.cpp) (revision 1e067c9bfa3d29a7299317c9a6f782bf2849b9b3) @@ -1671,7 +1671,7 @@ // buffer with: dst path and src paths separated by single '\0' TCHAR *pBuffer=static_cast(pCopyDataStruct->lpData); - unsigned long ulLen=pCopyDataStruct->cbData; + unsigned long ulLen=pCopyDataStruct->cbData / sizeof(TCHAR); CString str, strDstPath; CStringArray astrFiles; Index: src/chext/DropMenuExt.cpp =================================================================== diff -u -r4c272b19c74694c428c943011f279ec064fbd894 -r1e067c9bfa3d29a7299317c9a6f782bf2849b9b3 --- src/chext/DropMenuExt.cpp (.../DropMenuExt.cpp) (revision 4c272b19c74694c428c943011f279ec064fbd894) +++ src/chext/DropMenuExt.cpp (.../DropMenuExt.cpp) (revision 1e067c9bfa3d29a7299317c9a6f782bf2849b9b3) @@ -318,7 +318,7 @@ // IPC struct COPYDATASTRUCT cds; cds.dwData=pCommand[LOWORD(lpici->lpVerb)].uiCommandID; // based on command's number (0-copy, 1-move, 2-special (copy), 3-special (move)) - cds.cbData=m_bBuffer.m_iDataSize; + cds.cbData=m_bBuffer.m_iDataSize * sizeof(TCHAR); cds.lpData=m_bBuffer.m_pszFiles; // send a message to ch Index: src/chext/MenuExt.cpp =================================================================== diff -u -r4c272b19c74694c428c943011f279ec064fbd894 -r1e067c9bfa3d29a7299317c9a6f782bf2849b9b3 --- src/chext/MenuExt.cpp (.../MenuExt.cpp) (revision 4c272b19c74694c428c943011f279ec064fbd894) +++ src/chext/MenuExt.cpp (.../MenuExt.cpp) (revision 1e067c9bfa3d29a7299317c9a6f782bf2849b9b3) @@ -563,7 +563,7 @@ COPYDATASTRUCT cds; cds.dwData=(((DWORD)bMove) << 31) | pCommand[LOWORD(lpici->lpVerb)].uiCommandID; cds.lpData=pchBuffer; - cds.cbData=uiSize; + cds.cbData=uiSize * sizeof(TCHAR); // send a message ::SendMessage(hWnd, WM_COPYDATA, reinterpret_cast(lpici->hwnd), reinterpret_cast(&cds)); @@ -601,7 +601,7 @@ COPYDATASTRUCT cds; cds.dwData=pCommand[iCommandIndex].uiCommandID; cds.lpData=pszBuffer; - cds.cbData=uiSize; + cds.cbData=uiSize * sizeof(TCHAR); // send message ::SendMessage(hWnd, WM_COPYDATA, reinterpret_cast(lpici->hwnd), reinterpret_cast(&cds));