vista 下 SHFileOperation 内部复制文件是调用的是哪个api ?

vincentcsdn 2007-05-23 05:50:23
我知道2003及以下的系统 SHFileOperation 内部是调用 CopyFileExW 来复制文件的,
但是我发现到了 vista下, SHFileOperationW 内部不再调用 CopyFile 或 CopyFileEx.复制文件了,我手上只有测试版的vista, 跟踪起来显示不了正确的符号.

谁研究过这个? 请教一下?!

谢谢!
...全文
479 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
suffocater 2008-01-12
  • 打赏
  • 举报
回复
我的开发平台是XP+VC++2008,有多个多线程,静态链接MFC。

我的程序里面也有关于文件的操作。所有工作线程都会使用CFileFind去等待某个特定文件的查找结果,如果等不到就一直运行,直到找到了以后才终止。

程序开发完以后在开发机上测试,长时间一直运行,至少8个小时后,CPU占用率仍然保持在15%以下,其他程序可以正常启动和运行,系统运行速度正常。移到Vista以后出现异常。程序CPU占用率随时间推移在增加,到最后达到90%以上,退出屏幕保护程序都起码需要20秒钟,退出屏幕保护程序以后其他程序都无法正常启动,仿佛系统资源被耗尽,甚至在关闭该进程以后系统都长时间不能恢复启动时的效率,除非重新启动。不运行该程序则不会出现异常,确定是程序的问题。任务管理器中内存使用量一直保持不变,所以不太认为是内存泄漏。

各位以前有遇到过这种现象吗?一般会是什么问题导致的?急需帮助。
vincentcsdn 2007-05-30
  • 打赏
  • 举报
回复
vista下 SHFileOperation 和 SHFileOperationEx都是直接使用ReadFile和WriteFile复制文件的。这样似乎可以使SHFileOperation产生的进度窗口计算的时间更准确一些。(-.-)))
healer_kx 2007-05-24
  • 打赏
  • 举报
回复
Maybe啊。
nooning 2007-05-24
  • 打赏
  • 举报
回复
dfz(小羽) 的回答经典

还有就是 ZwOpenFile
dfz 2007-05-24
  • 打赏
  • 举报
回复
最后还是调用内核函数ZwCreateFile ZwWriteFile之类的。
yjgx007 2007-05-24
  • 打赏
  • 举报
回复
mark. study.
healer_kx 2007-05-24
  • 打赏
  • 举报
回复
这个确实得关注一下了,。MARK
verybigbug 2007-05-24
  • 打赏
  • 举报
回复
Vista下用这个IFileOperation 接口了。

15,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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