C# 代码存在 RamDisk 路径长度问题

Posted

技术标签:

【中文标题】C# 代码存在 RamDisk 路径长度问题【英文标题】:C# code has issues with RamDisk path length 【发布时间】:2015-02-10 12:13:33 【问题描述】:

我已将文件复制到 RAM 磁盘,但我收到一条没有意义的错误消息,因为路径实际上比物理磁盘上的路径短,而且肯定少于 260 个字符。任何建议如何解决这个问题。更改代码不是一种选择。

我正在使用 ImDisk 创建 RAM 磁盘。我的 RamDisk 定义为Z:

The file resolves to a path that is too long. The maximum length is 260 characters. [ File name = Z:\zz\xx\yy\xyz.sdf ]

这是我尝试过的:

手动缩短路径 - 即拥有最短的父级 - 即 只需使用驱动器。

我一直在研究使用 mklink 来构建一些使用 \J 的链接 \D 选项。但仍然不起作用 - 同时使用: 物理 -> RamDisk 和 RamDisk -> RamDisk。

Substr,用于将 RamDisk 路径映射到一个字母。这没什么区别。

\?\,我试过这个 - 但我认为程序有问题 检查非标准路径,我无法修改源代码。

我尝试过将 \?\ 与 mklink 结合使用,因此我创建了一个 链接到 \?\z:

【问题讨论】:

是z:真的是windows分配的字母还是你把它映射成网络地址? @heringer 它是 RamDisk。 【参考方案1】:

看来我可能有这个工作,我使用 Windows 共享做到了。我转到 RAMDisk 上的文件夹并通过右键单击共享此文件夹。到目前为止,这些似乎有效,我可以运行我的 C# 编译代码。

【讨论】:

以上是关于C# 代码存在 RamDisk 路径长度问题的主要内容,如果未能解决你的问题,请参考以下文章

C ++读/写 - RamDisk vs RAM [关闭]

如何知道有多少物理 Ram 将 imdisk 分配给 ramdisk

RAMdisk 读取似乎并不比硬盘 (HDD) 读取快

在生产环境中使用 RAM Disk 来加速应用程序性能

RAM disk

为 Eclipse 开发优化 Ramdisk 的使用