【问题标题】:native DLL acess denied UWP本机 DLL 访问被拒绝 UWP
【发布时间】:2017-10-03 09:48:26
【问题描述】:

我正在尝试为使用本机 DLL 的 Windows IoT Core Raspberry Pi 开发 UWP 应用程序。 我已经为 ARM 交叉编译了本机 DLL,编译一切正常。

问题在于本机 DLL 尝试使用 CreateFile2 访问可移动存储并返回拒绝访问。 我已经在清单中添加了可移动媒体的权限以及允许创建的文件扩展名。

但还是失败了。

【问题讨论】:

  • 您能否详细说明所访问的目标路径?
  • @Nico Zhu F:\text.txt 是路径。这是 StorageFolder 类的 path 方法返回的路径。我可以使用 CreateFileAsync 方法创建文件,但正常的 Windows 创建文件返回访问被拒绝。
  • 你要访问 SD 卡吗?
  • 我已经使用CreateFileAsync 方法在Removable storage 中创建文件,它在我身边运行良好。你能展示更多的代码和你写的文件扩展名吗?
  • @Nico Zhu CreateFileAsync 也适用于我。我正在使用 USB 读卡器访问 SD 卡。我必须将文件路径传递给我被拒绝访问的本机 DLL。 CreateFile2 也可以毫无问题地与本地应用程序文件夹一起使用,但不适用于外部存储

标签: c++ dll uwp


【解决方案1】:

CreateFileAsync 也适用于我。我正在使用 USB 读卡器访问 SD 卡。我必须将文件路径传递给我被拒绝访问的本机 DLL。 CreateFile2 也适用于本地应用程序文件夹没有问题,但不适用于外部存储

当从 Windows 应用商店应用调用时,CreateFile2 被简化。您只能打开 ApplicationData.LocalFolder 或 Package.InstalledLocation 目录中的文件或目录。您无法打开命名管道或邮槽或创建加密文件 (FILE_ATTRIBUTE_ENCRYPTED)。

更多信息可以参考CreateFile2 functionSkip the path: stick to the StorageFile

【讨论】:

    猜你喜欢
    • 2018-05-17
    • 2019-06-28
    • 2021-09-18
    • 1970-01-01
    • 2018-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    相关资源
    最近更新 更多