欢迎来到电脑知识学习网,专业的电脑知识大全学习平台!

手机版

电脑启动filenotfind-(电脑启动不了怎么解决)

病毒安全 发布时间:2022-12-05 02:59:13
电脑启动filenotfind (电脑启动不了怎么解决)

应用程序启动后,不可避免的会使用到操作系统提供的文件系统API,比如CreateFile等。当我们有枚举文件或文件夹的需求时,会使用到系统提供的FindFirstFile/FindNextFile/FindClose函数族。

比如,如下的代码为枚举指定路径下所有的文件夹和文件:

电脑

当我们调用FindFirstFile后,应用程序会持有一个对路径path的FILE内核对象且该内核对象引用计数增至1,当调用FindClose后,该FILE内核对象的引用计数减1至0,系统自动释放该内核对象。

如果程序流程上有设计缺陷,导致while循环过早跳出而没有调用FindClose,这时应用程序不会释放持有的FILE内核对象,那么下次对该path路径的操作(比如在Windows资源管理器中浏览)时,就会因为内核对象引用计数的问题出现非预期的结果。

所以,结论是:在编码过程中,请确保FindFirstFile和FindClose成对调用,保持内核对象引用计数的一致性。

责任编辑:电脑知识学习网

病毒安全