我一直从RmGetList得到一个5的返回值,有什么可能的原因吗?
我正在学习本教程:http://blogs.msdn.com/b/oldnewthing/archive/2012/02/17/10268840.aspx
我的RmStartSession和RmRegstierResources都返回0,表示成功。但需要注意的是,在RmStartSession之后,dwSession始终为0,而我的szSessionKey仍然是一个以0ea790d06656a54f84645b5755f7b6d6 null结尾的字符串。这是一个问题吗?
我的代码是js-ctype,所以我不愿意在winapi中分享它,但我会分享它:https://github.com/Noitidart/_scratchpad/blob/master/_WinAPI-RstrtMgr.js#L293
编辑:我了解到0的dwSession是有效的。然而,我仍然不明白为什么我在RmGetList上被拒绝访问,有人有什么想法吗?
发布于 2016-11-28 18:02:40
我了解到重启管理器不支持文件夹,当您尝试传递文件夹时,会返回错误5:https://blog.yaakov.online/failed-experiment-what-processes-have-a-lock-on-this-folder/
更新:这里有一些关于如何使用重启管理器API的示例代码:https://github.com/Microsoft/msbuild/blob/master/src/Tasks/LockCheck.cs
发布于 2020-04-26 06:42:19
RmGetList将返回错误5如果任何更高级别的事情,如文件系统填充阻塞文件驱动程序筛选器拒绝从任何进程和函数访问文件xxx无论是windows内核还是用户代码尝试访问它对重新启动管理器执行相同操作,重新启动管理器尝试访问该文件,驱动程序抛出错误5,重新启动管理器不知道如何处理它,并将其重新抛回调用函数,因此您将获得访问被拒绝
如果你正在尝试它的所有文件在windows卷,将有许多文件抛出错误5,包括第三奇偶校验杀毒文件或ms defender或.
只需使用try catch并忽略它们,因为即使您知道锁定它们的是什么pid,除了监视之外,您也无能为力
如果您甚至没有锁定文件的读取权限,也会发生这种情况,在这种情况下,请尝试修复安全权限,然后重试
https://stackoverflow.com/questions/28494684
复制相似问题