Как найти имена всех файлов из буфера обмена
Я только что создал приложение MFC, чтобы найти имена файлов из буфера обмена.Этот код отлично работает, когда мы копируем 1 файл, но когда мы копируем несколько файлов, он показывает только первый файл. Есть ли какой-нибудь способ узнать все имена файлов, скопированные в буфер обмена?
Что я уже пробовал:
AddClipboardFormatListener(AfxGetApp()->m_pMainWnd->m_hWnd); LRESULT Cfile_trackerDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) { switch(message) { case WM_CLIPBOARDUPDATE: { AfxBeginThread(FileArrival, NULL); break; } case WM_CHANGECBCHAIN: { AfxBeginThread(FileArrival, NULL); break; } } return CDialog::WindowProc(message, wParam, lParam); } UINT FileArrival(LPVOID param) { TCHAR lpszFileName[MAX_PATH]; char *szTime; time_t thistime; OpenClipboard(0); HGLOBAL hGlobal = (HGLOBAL)GetClipboardData(CF_HDROP); if (hGlobal) { HDROP hDrop = (HDROP)GlobalLock(hGlobal); if (hDrop) { time(&thistime); szTime = ctime(&thistime); DragQueryFile(hDrop, 0, lpszFileName, MAX_PATH); WriteLog((char*)lpszFileName,1); GlobalUnlock(hGlobal); } CloseClipboard(); } return 0; }