windows下获取柱面、扇区数,扇区大小

news/2024/11/23 1:31:45/

物理硬盘命名为\\.\PhysicalDrive0

用CreateFile打开物理硬盘,然后用DeviceIoControl的参数IOCTL_DISK_GET_DRIVE_GEOMETRY,代码如下

#include <windows.h>
#include <stdio.h>
#include <winioctl.h>#define wszDrive L"\\\\.\\PhysicalDrive0"BOOL GetDriveGeometry(LPWSTR wszPath, DISK_GEOMETRY *pdg)
{HANDLE hDevice = INVALID_HANDLE_VALUE;BOOL bResult = FALSE;DWORD junk = 0;hDevice = CreateFile(wszDrive, 0,FILE_SHARE_READ | FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0,NULL);if (hDevice == INVALID_HANDLE_VALUE) return FALSE;bResult = DeviceIoControl(hDevice, IOCTL_DISK_GET_DRIVE_GEOMETRY,NULL,0,pdg,sizeof(*pdg),&junk,NULL);CloseHandle(hDevice);return TRUE;
}int main()
{DISK_GEOMETRY dg = {0};BOOL bResult = FALSE;ULONGLONG DiskSize = 0;bResult = GetDriveGeometry(wszDrive, &dg);if (bResult) {wprintf(L"Drive path =%ws\n", wszDrive);wprintf(L"Cylinders = %I64d\n", dg.Cylinders);wprintf(L"Tracks/cylinder=%ld\n", dg.TracksPerCylinder);wprintf(L"Sectors/track=%ld\n", dg.SectorsPerTrack);wprintf(L"Bytes/sector=%ld\n", dg.BytesPerSector);DiskSize = dg.Cylinders.QuadPart * (ULONG)dg.TracksPerCylinder * (ULONG)dg.SectorsPerTrack * (ULONG)dg.BytesPerSector;wprintf(L"Disk size=%I64d (Bytes)"L"            %.2f (Gb)\n", DiskSize,(double)DiskSize / (1024 * 1024 * 1024));} else {wprintf(L"GetDriveGeometry failed. error:%ld.\n", GetLastError());}return 0;
}




http://www.ppmy.cn/news/869987.html

相关文章

OS | 磁盘地址结构 、柱面号 盘面号 扇区号的计算

一、前情回顾 1、磁盘读写时间 问题&#xff1a; 2、减少延迟时间的方法&#xff1a;交替编号 3、磁盘地址结构的设计 书里推荐的这种物理地址结构&#xff0c;也就是柱面号放在盘面号之前会发生什么情况呢&#xff1f; 为什么磁盘的物理地址是&#xff08;柱面号&#xff0c;盘…

Ceph分布式存储 - 常见OSD故障排除

1.常见的OSD故障排除 在排除OSD故障之前&#xff0c;请检查显示器和网络。如果ceph health或ceph -s返回健康状态&#xff0c;则表示监视器形成了法定人数。如果监视器未达到仲裁或监视器状态不正确&#xff0c;请首先解决监视器问题。验证您的网络并确保其正常工作&#xff0c…

【记录】smartctl|Linux如何通过smartctl查看有没有坏的磁盘?以及使用时长、电源周期、故障记录等

smartctl是一个用于监测和分析硬盘健康状态的工具&#xff0c;可以用于检测是否存在坏的磁盘。以下是使用smartctl检查磁盘健康状态的步骤&#xff1a; 安装smartctl软件 在Linux系统中&#xff0c;smartctl通常包含在smartmontools软件包中。如果您还没有安装smartmontools&am…

城市内涝监测设备-内涝监测终端

随着我国城市化发展迅速、全球极端天气现象频发带来的暴雨天气增多&#xff0c;汛期暴雨引发道路低洼处、立交桥底、隧道、涵洞等城市 内涝时有发生&#xff0c;甚至开启城市看海模式&#xff0c;对交通、电力、通讯等造成了严重的影响和破坏&#xff0c;严重时造成人民生命、财…

互联网医院源码|互联网医院系统源码|互联网医院诊疗系统

互联网医院系统开发可以提供许多好用的功能&#xff0c;以下是一些常见的功能&#xff1a;   在线挂号预约&#xff1a;用户可以通过系统在线选择医生、科室和就诊时间&#xff0c;并进行挂号预约&#xff0c;避免了传统排队等候的麻烦。   问诊咨询&#xff1a;用户可以通…

GX Works 3安装中断,提示无法登录注册表

解决办法&#xff1a;安装前关闭杀毒软件&#xff0c;以管理员权限运行程序

益配资

益配资是一家集金融服务、基金管理、股权投资、资产管理、实体项目投资等业务的综合金融企业。战略合作伙伴有东海证券、海通证券、申万宏源证券、国泰君安证券、招商证券、国信证券、四川信托、云南信托等多家合作银行及券商金融机构。 公司凭借多年金融行业投资经验、以客户为…

珍爱网

介绍&#xff1a;采集珍爱网&#xff08;仅开始学爬虫&#xff0c;太多方法都不会&#xff09; 必须要有一个账号&#xff0c;当采集多了后会受到限制 要求通过手机App上传身份证等详细信息列表页是post请求 有一个参数找不到规律&#xff0c;详情页面不需要登录 get请求即可 …