急急急,如何得到一个被拖入程序里的文件的路径?

moony_blue 2001-08-01 08:02:34
如何实现这么一个简单的效果:
建立一个SDI程序,在windows窗口把任意(位置,类型)一个文件拖入这个程序的视图,程序就跳出一个对话框显示这个文件的路径?
...全文
144 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
LZLZ 2001-08-01
  • 打赏
  • 举报
回复
其实用COM技术更好一点,更大的灵活
MSVCer 2001-08-01
  • 打赏
  • 举报
回复
你一定要在窗口初始化时,允许拖放,才不会出现禁止标志,如下代码
//允许文件拖放
DragAcceptFiles( TRUE );
moony_blue 2001-08-01
  • 打赏
  • 举报
回复
但是拖入文件却有禁止标记,是不是应该注册文件类型?
如果程序是允许拖入任意类型的文件呢?
LZLZ 2001-08-01
  • 打赏
  • 举报
回复
好象有两种方法实现文件拖放,你用的是哪一种?WS_EX_ACCEPTFILES?COM?
五行擒拿术 2001-08-01
  • 打赏
  • 举报
回复
当有文件拖入你的窗口时会响应这个函数
afx_msg void OnDropFiles( HDROP hDropInfo );
你只要重载窗口中的这个函数,
//Get File Number ;
int FileNumber ;
FileNumber = DragQueryFile( hDropInfo , -1 , NULL , 0 ) ;
if( FileNumber == 1 )
{
char FileName[MAX_PATH] ;
DragQueryFile( hDropInfo , 0 , (LPSTR)FileName , sizeof( FileName ) ) ;
}
这样就可以取得了。

五行擒拿术 2001-08-01
  • 打赏
  • 举报
回复
你等会,我帮你查查,我写过这类代码

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧