zoukankan      html  css  js  c++  java
  • WinApi学习笔记获取电脑中磁盘信息

    #include <windows.h>
    #include <stdlib.h>
    #include <stdio.h>
    
    #define BUFSIZE 1024
    
    
    void main(void)
    {
    	CHAR SzLogicalDriveStrings[BUFSIZE];
    	PCHAR SzDrive;
    	//把这个数组置空
    	ZeroMemory(SzLogicalDriveStrings,BUFSIZE);
    //执行完后SzLogicalDriveStrings里存的是几个磁盘的字符串 GetLogicalDriveStrings(BUFSIZE-1,SzLogicalDriveStrings); SzDrive = (PCHAR)SzLogicalDriveStrings; do { MessageBox(NULL,SzDrive,"硬盘",MB_OK); SzDrive +=(lstrlen(SzDrive)+1);//lstrlen返回字符串的字符长度 } while(*SzDrive !='\x00');//当内存中的数据为空时退出,前面置空的 }

    以上是通过GetLogicalDriveStrings函数获取硬盘信息
    还可以通过FindFirstVolume和FindNextVolume获取硬盘信息

    #include <windows.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <cstring>
    
    #define BUFSIZE 1024
    
    LPSTR GetDirverInfo(LPSTR szDrive)
    {	
    	UINT uDriveType;
    	uDriveType = GetDriveType(szDrive);
    	switch(uDriveType)
    	{
    	case DRIVE_UNKNOWN:
    		return "未知\n";
    		break;
    	case DRIVE_NO_ROOT_DIR:
    		 return "无效\n";
    		break;
    	case DRIVE_REMOVABLE:
    		return "可被移除\n";
    		break;
    	case DRIVE_FIXED:
    		return "不能被移除\n";
    		break;
    	case DRIVE_REMOTE:
    		return "网络上的\n";
    		break;
    	case DRIVE_CDROM:
    		return "是个CD\n";
    		break;
    	case DRIVE_RAMDISK:
    		return "是U盘吧";
    		break;
    	default:
    		break;
    	}
    }
    
    int main(void)
    {
    	CHAR buf[BUFSIZE];
    	CHAR myMessage[BUFSIZE];
    	HANDLE hVol;
    	BOOL flag;
    	hVol = FindFirstVolume(buf,BUFSIZE);
    	MessageBox(NULL,GetDirverInfo(buf),"硬盘",MB_OK);
    	while(FindNextVolume(hVol,buf,BUFSIZE))
    	{
    		MessageBox(NULL,GetDirverInfo(buf),"硬盘",MB_OK);
    	}	
    	flag = FindVolumeClose(hVol);
    	return (flag);
    }
  • 相关阅读:
    Redis缓存穿透和雪崩
    Redis主从复制
    Redis发布订阅
    IO多路复用
    Synchronized解读
    日志导致jvm内存溢出相关问题
    tomcat及springboot实现Filter、Servlet、Listener
    MySQL主从复制针对trigger的特殊处理
    二、变量/常量/数据类型
    Ubuntu21.04 / Linux Mint20.2 安装 TradingView分析软件
  • 原文地址:https://www.cnblogs.com/liulun/p/1570336.html
Copyright © 2011-2022 走看看