[MFC]ドラッグ&ドロップしたファイル名を取得する
// CDialog の派生クラス CSampleDlg を作って、と。
// get file path when Drag and Drop
BOOL CSampleDlg::OnInitDialog()
{
(略)
// TODO: 特別な初期化を行う時はこの場所に追加してください。
DragAcceptFiles(TRUE);
(略)
}
void CSampleDlg::OnDropFiles(HDROP hDropInfo)
{
// ドロップされたファイル数を取得
UINT iCount = ::DragQueryFile(hDropInfo, 0xFFFFFFFF, NULL, 0);
char filepath[MAX_PATH + 1];
for (UINT i=0; i<iCount; i++){
// ファイルの絶対パスを取得
::DragQueryFile(hDropInfo, i, filepath, MAX_PATH + 1);
// 絶対パス名を表示
MessageBox(filepath);
}
// ファイル名を取得するために
// システムが確保したメモリを解放
::DragFinish(hDropInfo);
//CDialog::OnDropFiles(hDropInfo);
}