System.IO.DriveInfo 返回错误的磁盘空间值

2023-12-22

更新:这个问题不会出现在我测试过的 Android 设备上。它返回良好的值。非常感谢有关此事的任何指示。

我无法从 Mac 台式计算机获取正确的可用空闲空间值。我正在使用 Unity3D C#,并使用以下代码:

DriveInfo[] drives = DriveInfo.GetDrives();

foreach(DriveInfo drive in drives)
{
    if (drive.IsReady)
    {
        Debug.Log(drive.Name);
        Debug.Log(drive.AvailableFreeSpace);
        Debug.Log(drive.TotalFreeSpace);
        Debug.Log(drive.TotalSize);
    }
}

我的结果有点奇怪。我只得到一个驱动器:我得到的名称是“/”,并且值是错误的。 availableFreeSpace 返回的值高于 TotalSize,这是没有意义的。另外,DriveType 为 Unknown,驱动器格式为 unixfs(如果有帮助的话)。

不知道我是否遗漏了 Mac 计算机上文件结构的一些明显内容?

编辑:我有一个 500go 的 SATA HDD,分为两个分区。不是应该给我2个驱动器吗?

EDIT2:我的 Monodevelop 版本是 4.0.1,所以我认为这与几年前在版本 2.10.0 或类似版本上报告的错误无关。

我究竟做错了什么?


发布到另一个论坛,显然这是一个 Mono/Unity 错误。最新版本的 Unity 使用旧的 Mono(编译器,而不是 MonoDevelop(文本编辑器)):

http://unity3d.com/unity/faq#section-445 http://unity3d.com/unity/faq#section-445

返回错误值的错误在 Mono (2.10) 的更高版本中得到了修复,另一个有关 DriveInfo 的错误也在 Mono 版本 3.0 中得到了修复:

http://www.mono-project.com/Release_Notes_Mono_2.10 http://www.mono-project.com/Release_Notes_Mono_2.10

http://www.mono-project.com/Release_Notes_Mono_3.0 http://www.mono-project.com/Release_Notes_Mono_3.0

因此,除了寻找另一种方法来获取 Mac 上的可用磁盘空间之外,几乎没有什么可做的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

System.IO.DriveInfo 返回错误的磁盘空间值 的相关文章

  • 使用 lambda 表达式注册类型

    我想知道如何在 UnityContainer 中实现这样的功能 container RegisterType
  • 如何在多线程C++ 17程序中交换两个指针?

    我有两个指针 pA 和 pB 它们指向两个大的哈希映射对象 当pB指向的哈希图完全更新后 我想交换pB和pA 在C 17中 如何快速且线程安全地交换它们 原子 我是 c 17 的新手 2个指针的原子无等待交换可以通过以下方式实现 inclu
  • GetType() 在 Type 实例上返回什么?

    我在一些调试过程中遇到了这段代码 private bool HasBaseType Type type out Type baseType Type originalType type GetType baseType GetBaseTyp
  • 在c#中执行Redis控制台命令

    我需要从 Redis 控制台获取 客户端列表 输出以在我的 C 应用程序中使用 有没有办法使用 ConnectionMultiplexer 执行该命令 或者是否有内置方法可以查找该信息 CLIENT LIST是 服务器 命令 而不是 数据库
  • 如何使用 Castle Windsor 将对象注入到 WCF IErrorHandler 实现中?

    我正在使用 WCF 开发一组服务 该应用程序正在使用 Castle Windsor 进行依赖注入 我添加了一个IErrorHandler通过属性添加到服务的实现 到目前为止一切正常 这IErrorHandler对象 一个名为FaultHan
  • 为什么在 WebApi 上下文中在 using 块中使用 HttpClient 是错误的?

    那么 问题是为什么在 using 块中使用 HttpClient 是错误的 但在 WebApi 上下文中呢 我一直在读这篇文章不要阻止异步代码 https blog stephencleary com 2012 07 dont block
  • 当一组凭据下的计划任务启动的进程在另一组凭据下运行另一个程序时,Windows 是否有限制

    所以我有一个简单的例子 其中我有应用程序 A 它对用户 X 本地管理员 有一些硬编码的凭据 然后它使用硬编码的绝对路径启动带有这些凭据的应用程序 B A 和 B 以及 dotnet 控制台应用程序 但是它们不与控制台交互 只是将信息写入文件
  • Python 属性和 Swig

    我正在尝试使用 swig 为一些 C 代码创建 python 绑定 我似乎遇到了一个问题 试图从我拥有的一些访问器函数创建 python 属性 方法如下 class Player public void entity Entity enti
  • 将 Long 转换为 DateTime 从 C# 日期到 Java 日期

    我一直尝试用Java读取二进制文件 而二进制文件是用C 编写的 其中一些数据包含日期时间数据 当 DateTime 数据写入文件 以二进制形式 时 它使用DateTime ToBinary on C 为了读取 DateTime 数据 它将首
  • 在视口中查找 WPF 控件

    Updated 这可能是一个简单或复杂的问题 但在 wpf 中 我有一个列表框 我用一个填充数据模板从列表中 有没有办法找出特定的数据模板项位于视口中 即我已滚动到其位置并且可以查看 目前我连接到了 listbox ScrollChange
  • 在 NaN 情况下 to_string() 可以返回什么

    我使用 VS 2012 遇到了非常令人恼火的行为 有时我的浮点数是 NaN auto dbgHelp std to string myFloat dbgHelp最终包含5008角色 你不能发明这个东西 其中大部分为0 最终结果是 0 INF
  • 保护 APK 中的字符串

    我正在使用 Xamarin 的 Mono for Android 开发一个 Android 应用程序 我目前正在努力使用 Google Play API 添加应用内购买功能 为此 我需要从我的应用程序内向 Google 发送公共许可证密钥
  • C++ 中的双精度型数字

    尽管内部表示有 17 位 但 IEE754 64 位 浮点应该正确表示 15 位有效数字 有没有办法强制第 16 位和第 17 位为零 Ref http msdn microsoft com en us library system dou
  • 高效列出目录中的所有子目录

    请参阅迄今为止所采取的建议的编辑 我正在尝试使用 WinAPI 和 C 列出给定目录中的所有目录 文件夹 现在我的算法又慢又低效 使用 FindFirstFileEx 打开我正在搜索的文件夹 然后我查看目录中的每个文件 使用 FindNex
  • 等待 IAsyncResult 函数直至完成

    我需要创建等待 IAsyncResult 方法完成的机制 我怎样才能做到这一点 IAsyncResult result contactGroupServices BeginDeleteContact contactToRemove Uri
  • WPF DataGridTemplateColumn 组合框更新所有行

    我有这个 XAML 它从 ItemSource 是枚举的组合框中选择一个值 我使用的教程是 http www c sharpcorner com uploadfile dpatra combobox in datagrid in wpf h
  • 打印大型 WPF 用户控件

    我有一个巨大的数据 我想使用 WPF 打印 我发现WPF提供了一个PrintDialog PrintVisual用于打印派生的任何 WPF 控件的方法Visual class PrintVisual只会打印一页 因此我需要缩放控件以适合页面
  • 可访问性不一致:参数类型的可访问性低于方法

    我试图在两个表单之间传递一个对象 基本上是对当前登录用户的引用 目前 我在登录表单中有一些类似的内容 private ACTInterface oActInterface public void button1 Click object s
  • 使用 omp_set_num_threads() 将线程数设置为 2,但 omp_get_num_threads() 返回 1

    我有以下使用 OpenMP 的 C C 代码 int nProcessors omp get max threads if argv 4 NULL printf argv 4 s n argv 4 nProcessors atoi argv
  • 不区分大小写的字符串比较 C++ [重复]

    这个问题在这里已经有答案了 我知道有一些方法可以进行忽略大小写的比较 其中涉及遍历字符串或一个good one https stackoverflow com questions 11635 case insensitive string

随机推荐

  • 在屏幕上居中弹出窗口?

    我们怎样才能将通过 JavaScript 打开的弹出窗口居中window open屏幕中央的功能 确切的x and y哪个坐标取决于当前屏幕分辨率 单 双显示器功能 归功于http www xtf dk http www xtf dk 谢谢
  • 如何将烤面包机库注入日志模块而不在异常处理程序中出现循环依赖错误

    我已将 AngularJS Toaster 库添加到我的 index html 中
  • ABAC with keycloak - 在策略中使用资源属性

    我想要实现的目标 使用以下策略保护 Keycloak 中的资源 if resource status draft evaluation grant else evaluation deny 按照他们官方的说法文件 https keycloa
  • 更改 std::endl 以输出 CR+LF 而不是 LF

    我正在 Linux 平台上编写一个程序 该程序生成文本文件 这些文本文件不可避免地会在 Windows 平台上查看 此刻 路过std endl into a ostream仅为换行符生成 CR 字符 当然 这些文本文件在 MS 记事本中看起
  • 与 Poco Net 的链接错误

    我一直在尝试使用 POCO 库构建一些代码 当我尝试构建时 我得到以下信息 Undefined symbols for architecture x86 64 Poco Net SocketAddress SocketAddress std
  • android Mediaplayer 更新到 5.0 后出现错误

    最近刚刚将我的 Galaxy s5 从 4 4 4 更新到 5 0 我的媒体播放器代码已损坏 在更新之前一切正常 我的 Nexus 7 平板电脑上也出现这种情况 我从服务器获取 url 并尝试从服务器流式传输 mp3 下面的代码全部在 on
  • Google Maps API v3 地理定位在 Google Chrome 中不起作用

    我正在使用 Google Maps API v3 Geolocation 来获取用户的实际位置 我从谷歌开发者那里找到了这篇文章 https developers google com maps documentation javascri
  • 使用多个数据数组对本机平面列表做出反应

    我是 RN 新手 需要一些帮助 我有一个像 title title price price subtitle subtitle 我想在 flatlist 中使用 2 个值 如下所示
  • CodeIgniter 中哪里可以格式化数字?

    我应该格式化我的数字吗1234 20 gt 1 234 20在模型中还是在视图中使用 php 和 codeigniter 它属于视图层 模型只关心价值 而不关心如何将其呈现给用户 此外 如果您的网站是多语言的 您可能需要以不同的方式显示它
  • 如何使用猫鼬模式验证密码长度?

    在我的猫鼬模式中 我使用下面的代码作为密码字段 但它不检查密码的最小长度 这里出了什么问题 password type String required true match d a z A Z minlength 5 它实际上工作正常 您可
  • 查找 Excel 工作表中的最后一个单元格?

    我正在使用 vb6 并将数据复制到 Excel 工作表 我需要做的是将数据附加到现有工作表 我现在需要找到工作表中最后一个单元格的索引号 只有一张工作表 我尝试了一些方法 例如oBook range cells specialcells x
  • Set-Service:无法停止服务,因为它依赖于其他服务

    当我运行以下命令时 Set Service ComputerName appserver Name MyService Status Stopped 我收到一条错误消息 Set Service Cannot stop service My
  • 将文件中的图像读/写到 BufferedImage 的最快方法?

    在 Java Grails 中将文件中的图像读入 BufferedImage 的最快方法是什么 在 Java Grails 中将 BufferedImage 中的图像写入文件的最快方法是什么 我的变体 阅读 byte imageByteAr
  • 使用或不使用 NI Vision 从二进制缓冲区/文件创建 LabVIEW IMAQ 图像

    假设您有一个表示二维图像的二进制缓冲区或文件 如何使用 LabVIEW 将二进制数据转换为 IMAQ 图像以便进一步处理 借助 NI 视觉 对于 LabVIEW 用户已安装 NI 视觉库的人 有一些 VI 允许从 2D 数组复制 IMAQ
  • execv() 和 fork() 浪费时间

    我目前正在学习fork and execv 我对组合的效率有疑问 我看到了以下标准代码 pid fork if pid lt 0 handle fork error else if pid 0 execv son prog argv son
  • System.WeakReference 的实际使用

    我明白什么系统 弱引用 http msdn microsoft com en us library ms404247 aspx确实如此 但我似乎无法理解它可能有用的实际例子 在我看来 这个课程本身就是一个黑客 在我看来 还有其他更好的方法来
  • Eclipse,在库中定义的开放声明

    在 Eclipse 中 如果我按 F3 或打开某个库中的引用的声明 它会打开代码的只读副本 我一开始认为这非常有用 因为它提醒我它的库代码和更改可能会影响更多项目 但我发现如果我确实想编辑 则必须手动查找 java 文件 这很痛苦 我可以
  • 是否可以在 apache flink CEP 中处理多个流?

    我的问题是 如果我们有两个原始事件流 即Smoke and 温度我们想知道是否有复杂的事件 即Fire通过将运算符应用于原始流已经发生了 我们可以在 Flink 中做到这一点吗 我问这个问题是因为到目前为止我所看到的 Flink CEP 的
  • 当行有子项时复制数据库中的行

    我需要复制表中的行 并复制通过其外键链接到其他表中的所有行 然后复制链接到这些行的所有行 问题是当我复制该行时 密钥将会改变 如何通过表之间的关系传播这些更改 您可以编写一个实现所有复制逻辑的存储过程 本质上 在主表中插入复制行 将新 ID
  • System.IO.DriveInfo 返回错误的磁盘空间值

    更新 这个问题不会出现在我测试过的 Android 设备上 它返回良好的值 非常感谢有关此事的任何指示 我无法从 Mac 台式计算机获取正确的可用空闲空间值 我正在使用 Unity3D C 并使用以下代码 DriveInfo drives