有关新Windows 10错误的信息:ERROR_CLOUD_FILE_ACCESS_DENIED

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有关新Windows 10错误的信息:ERROR_CLOUD_FILE_ACCESS_DENIED相关的知识,希望对你有一定的参考价值。

运行新的Windows 10错误代码打开文件以便使用CreateFile()进行读取。我们收到错误395,但是关于它的含义或解决方法的信息很少。 Windows 10 SDK中的错误详细信息如下所示

  • 错误号395
  • 误差常数ERROR_CLOUD_FILE_ACCESS_DENIED
  • 操作系统错误消息“拒绝访问云文件”。

有问题的机器是Windows 10 Professional。它正在运行OneDrive,但该文件不在OneDrive文件夹下。我们怀疑OneDrive可能正在使用它的Known Folder Move功能

用于打开文件的代码是:

HANDLE hnd = ::CreateFile(fname,
        GENERIC_READ,
        FILE_SHARE_READ,
        NULL,
        OPEN_EXISTING,
        FILE_FLAG_BACKUP_SEMANTICS | FILE_FLAG_SEQUENTIAL_SCAN,
        NULL);
if (hnd == INVALID_HANDLE_VALUE) {
    DWORD exitcode = ::GetLastError();
    printf("%d
", exitcode);
    }

如果有人遇到过这个问题,我们非常感谢你能分享的任何见解。

答案

仔细研究后,我们发现这是由一个简单的权限问题引起的。执行CreateFile()调用的用户进程无权访问存储在云中的文件。 OneDrive的Known File Move没有意识到它导致文件夹存储在云端。

一旦我们意识到这是一个云权限问题,修复云权限以允许用户进程打开文件是一件简单的事情。

在我们的特定情况下,我们安排以管理员身份运行我们的流程,这使我们对CreateFile()的调用成功。如果您尝试访问存储在另一个用户拥有的OneDrive共享中的文件,则您将无法使用此解决方案。您需要让文件所有者授予您所请求的访问权限。

以上是关于有关新Windows 10错误的信息:ERROR_CLOUD_FILE_ACCESS_DENIED的主要内容,如果未能解决你的问题,请参考以下文章

windows版本 rac 报错信息

GO_10:GO语言基础之error

错误:任务“:app:compileDebugKotlin”执行失败。 > 编译错误。有关详细信息,请参阅日志

将 UWP 应用程序提交到 Windows 应用商店时出现错误 1300

[Error] - Windows卸载程序时,提示错误2503

HTTP Status 500 _ Internal Server Error 错误原因,怎么改