windows的磁盘操作之六——获取系统所在物理磁盘号
来源:互联网 发布:cnc编程培训学校 编辑:程序博客网 时间:2024/05/18 20:09
很多情况下,我们在程序中需要获知操作系统安装在哪个分区上或者哪个物理磁盘上,进而对其进行一些操作或避免一些操作。例如要避免对系统磁盘分区表的删除操作。本节讨论如何获取操作系统所在的逻辑分区号和物理驱动器号。
还是先上代码。
/******************************************************************************
* Function: get the number of disk which the system installed on
* input: N/A
* output: N/A
* return: Succeed, disk number
* Fail, -1
******************************************************************************/
DWORD GetSystemDiskPhysicalNumber(void)
{
CHAR sysPath[DISK_PATH_LEN];
CHAR diskLetter;
DWORD diskNumber;
DWORD ret = GetSystemDirectory(sysPath, sizeof(sysPath));
if (ret == 0)
{
fprintf(stderr, "GetSystemDirectory() Error: %ld\n", GetLastError());
return (DWORD)-1;
}
diskLetter = sysPath[0];
diskNumber = GetPhysicalDriveFromPartitionLetter(diskLetter);
return diskNumber;
}
代码分析:
1. 先调用GetSystemDirectory函数获取windows路径。sysPath中存储的路径形式为C:\WINDOWS\system32。
2. 截取sysPath字符串的第一个字符,即可获得系统所在的分区盘符。
3. 根据逻辑分区号,调用第四节http://cutebunny.blog.51cto.com/301216/624379中讨论的GetPhysicalDriveFromPartitionLetter函数即可获得操作系统所在的物理磁盘号。
本文出自 “bunny技术坊” 博客,请务必保留此出处http://cutebunny.blog.51cto.com/301216/624609
0 0
- windows的磁盘操作之六——获取系统所在物理磁盘号
- windows的磁盘操作之六——获取系统所在物理磁盘号
- windows的磁盘操作之六——获取系统所在物理磁盘号
- windows的磁盘操作之六——获取系统所在物理磁盘号
- windows的磁盘操作之七——获取当前所有的物理磁盘号
- windows的磁盘操作之七——获取当前所有的物理磁盘号
- windows的磁盘操作之七——获取当前所有的物理磁盘号
- windows的磁盘操作之七——获取当前所有的物理磁盘号
- windows的磁盘操作之七——获取当前所有的物理磁盘号 加备注
- 获取操作系统所在的物理磁盘号
- windows的磁盘操作之四——根据逻辑分区号获得物理磁盘号
- windows的磁盘操作之四——根据逻辑分区号获得物理磁盘号
- windows的磁盘操作之四——根据逻辑分区号获得物理磁盘号
- windows的磁盘操作之四——根据逻辑分区号获得物理磁盘号
- windows的磁盘操作之五——获取物理磁盘上的所有逻辑分区号
- windows的磁盘操作之五——获取物理磁盘上的所有逻辑分区号
- windows的磁盘操作之五——获取物理磁盘上的所有逻辑分区号
- windows的磁盘操作之五——获取物理磁盘上的所有逻辑分区号
- oracle声明游标和使用游标
- 读《JavaScript语言精粹》1
- 安装webpack时提示Windows_NT 6.1.7601
- 5-54 Pop Sequence
- css3大总结-面使用
- windows的磁盘操作之六——获取系统所在物理磁盘号
- redis面试总结
- Spring @Resource @Autowired @Component常用注解
- React学习之高级ReactDOMServer(二十五)
- NSString 和 const char *互转
- Hello World · GitHub 指南
- css3 box-sizing属性
- iBET Live Casinos Rebate 0.75% Bonus
- XShell鼠标选中, 实现快捷复制和粘贴