这里获取的序列号是卷的序列号,主要用API函数读取。
API函数介绍:
BOOL GetVolumeInformation(
LPCTSTR lpRootPathName, // 硬盘的路径
LPTSTR lpVolumeNameBuffer, // 硬盘的卷标
DWORD nVolumeNameSize, // 卷标的字符串长度
LPDWORD lpVolumeSerialNumber, // 硬盘的序列号
LPDWORD lpMaximumComponentLength, // 最大的文件长度
LPDWORD lpFileSystemFlags, // 文件系统的一此标志
LPTSTR lpFileSystemNameBuffer, // 存储所在盘符的分区类型的长指针变量
DWORD nFileSystemNameSize // 分区类型的长指针变量所指向的字符串长度
);
code:
#include<windows.h>
#include <string>
#pragma comment(lib, "Iphlpapi.lib")
using namespace std;
int main()
{
LPCTSTR lpRootPathName = "c:\\"; //这里取的是C盘,要取哪个盘更改路径就行
LPTSTR lpVolumeNameBuffer = new char[12];
DWORD nVolumeNameSize = 12; // 卷标的字符串长度
DWO