Ribbon XP
场景:Ribbon界面拖曳文件到窗体,XP和Windows 7不一样的结局,该如何解决
Ribbon界面拖曳文件到窗体,XP和Windows 7不一样的结局
在VS2008SP1工程下,多文档CRichEditView视图,启动文件拖曳支持
重载消息OnDropFiles让支持自动打开拖曳到窗体的文档
在Windows 7下表现正常,在XP下出现错误,表现为弹出提示“找不到I:\]。"之类的,其中I是程序的路径,而后面的]。是固定出现的。。。。 不知道为什么在XP下会出现这种错误呢?以下是拖曳文件到窗体后的效果图:
效果如上,程序在这里http://download.****.net/source/2296975
测试就可以知道在Windows 7正常 ,在XP反常。
------解决方案--------------------
帖子都沉底了!只能帮楼顶到上面,以期更多高手帮楼主解决难题!
Ribbon界面拖曳文件到窗体,XP和Windows 7不一样的结局
在VS2008SP1工程下,多文档CRichEditView视图,启动文件拖曳支持
- C/C++ code
EnableShellOpen(); RegisterShellFileTypes(); m_pMainWnd->DragAcceptFiles();
重载消息OnDropFiles让支持自动打开拖曳到窗体的文档
- C/C++ code
void CMainFrame::OnDropFiles(HDROP hDropInfo) { // TODO: 在此添加消息处理程序代码和/或调用默认值 SetActiveWindow(); // activate us first ! UINT nFiles = ::DragQueryFile(hDropInfo, 0xFFFFFFFF, NULL, 0); CWinApp* pApp= AfxGetApp(); ASSERT(pApp != NULL); TCHAR szFileName[_MAX_PATH]; for (UINT iFile = 0; iFile < nFiles; iFile++) { ::DragQueryFile(hDropInfo, iFile, szFileName, _MAX_PATH); //应用程序打开拖入文档 pApp->OpenDocumentFile(szFileName); } ::DragFinish(hDropInfo); CMDIFrameWndEx::OnDropFiles(hDropInfo); }
在Windows 7下表现正常,在XP下出现错误,表现为弹出提示“找不到I:\]。"之类的,其中I是程序的路径,而后面的]。是固定出现的。。。。 不知道为什么在XP下会出现这种错误呢?以下是拖曳文件到窗体后的效果图:
效果如上,程序在这里http://download.****.net/source/2296975
测试就可以知道在Windows 7正常 ,在XP反常。
------解决方案--------------------
帖子都沉底了!只能帮楼顶到上面,以期更多高手帮楼主解决难题!