【问题标题】:Getting the cluster size of a hard drive (through code)获取硬盘的集群大小(通过代码)
【发布时间】:2010-11-07 14:26:42
【问题描述】:

我需要通过 C 或 C++ 找到用户硬盘的集群大小。硬盘驱动器使用 NTFS(虽然我很高兴知道它在其他文件系统上是如何完成的)。

我想我需要的是一些 win32 API 调用的组合,但我不知道是哪个。

例如,在 Windows 控制台中键入“fsutil fsinfo ntfsinfo c:”会得到“每个集群的字节数”,这正是我所需要的。 (尽管出于显而易见的原因,我不想运行该命令并解析它的输出。)

【问题讨论】:

标签: c winapi file-io ntfs


【解决方案1】:

使用GetDiskFreeSpace

BOOL WINAPI GetDiskFreeSpace(
  __in   LPCTSTR lpRootPathName,
  __out  LPDWORD lpSectorsPerCluster, // <--
  __out  LPDWORD lpBytesPerSector, // <--
  __out  LPDWORD lpNumberOfFreeClusters,
  __out  LPDWORD lpTotalNumberOfClusters
);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-02
    • 1970-01-01
    • 2013-03-01
    • 1970-01-01
    • 2013-06-15
    • 2019-06-02
    • 2022-10-18
    • 1970-01-01
    相关资源
    最近更新 更多