gpt4 book ai didi

c++ - 如何计算通过 C++ 将文件加载到应用程序的时间?

转载 作者:行者123 更新时间:2023-11-28 08:01:49 27 4
gpt4 key购买 nike

我已经用 C++ 编写了一个代码来在它的默认应用程序中打开一个文件,比如在 MS-Word 中的 .doc 现在我想计算在它的应用程序中打开一个文件的时间。

为此,我需要知道加载到该应用程序中的文件的百分比。但从最近 7 天开始,我找不到任何合适的解决方案。那么有人可以帮我解决这个问题吗?

如果我使用的是 Windows,那么 Windows 任务管理器可以帮助我执行此操作吗?

最佳答案

你想做的事不仅不可能,甚至没有意义。

当您播放 WMP 格式的 MP3 时,它不会将整个文件加载到内存中。相反,它一次将一小部分文件映射到内存中,这样它就可以在播放 MP3 时即时对其进行解码。 (我想如果你一直播放这首歌,没有停止或跳过或快进或倒带,它最终会读取文件的每个字节,可能在歌曲结束前几秒钟完成,但我怀疑你是这样的正在寻找。)

同样,Word 不会将任何整个 .doc 文件读入内存(除非它非常小)。这就是它能够在不使用大量内存的情况下编辑巨大文件的方式。 (同样,如果你翻阅整个文件,它最终可能会读取每个字节——就此而言,它最终可能会将足够多的文件复制到一个自动保存的备份文件中,这样它就不再需要查看原始文件了——但同样,我怀疑这就是您要找的。)

如果您只关心某些特定的应用程序,并且这些应用程序有一个 COM 自动化接口(interface)(就像 WMP 和 Word 一样),它们可能有方法或事件会在它们完成“加载”文件时告诉您(意味着他们已经阅读了足够多的内容以开始播放/显示/等),或者当他们“完成”文件时(意味着移动到下一首轨道,或其他),但没有通用的答案;不同的应用程序将具有不同的自动化接口(interface)。 (并且,作为旁注,您真的不想从 C++ 执行 COM 自动化,除非您真的必须这样做;使用 jscript、vbscript 或您最喜欢的 .NET 语言要容易得多……)

关于c++ - 如何计算通过 C++ 将文件加载到应用程序的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11237777/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com