1.首先在Dlg类中添加WM_DROPFILES消息处理函数。
void CMyDlg::OnDropFiles(HDROP hDropInfo)
{
// TODO: Add your message handler code here and/or call default
CDialog::OnDropFiles(hDropInfo);
}
2.在Dlg对话框上设置属性Accept files为true。
3.在处理函数中作相应的处理。
void CMyDlg::OnDropFiles(HDROP hDropInfo)
{
// TODO: Add your message handler code here and/or call default
char szFileName[MAX_PATH + 1] = {0};//被拖拽的文件的绝对路径
UINT nFiles = DragQueryFile(hDropInfo, 0xFFFFFFFF, NULL, 0); //被拖拽的文件的个数
for(UINT i=0; i<nFiles; i++)
{
DragQueryFile(hDropInfo, i, szFileName, MAX_PATH);//拖拽的文件名
MessageBox(szFileName);
}
// 结束此次拖拽操作,并释放分配的资源
CDialog::OnDropFiles(hDropInfo);
}