当前位置:首页 > C#应用:读取指定盘符的硬盘序列号

C#应用:读取指定盘符的硬盘序列号

点击次数:1379  更新日期:2010-12-25
\n

using System;
using System.IO;
using System.Runtime.InteropServices;
using System.Text;
using Microsoft.Win32;


\n

namespace Wjb.ReadOrWriteIniAndReg
{
/**////
/// 读取指定盘符的硬盘序列号
///
public class HardDiskVal
{
[DllImport("kernel32.dll")]
private static extern int GetVolumeInformation(
string lpRootPathName,
string lpVolumeNameBuffer,
int nVolumeNameSize,
ref int lpVolumeSerialNumber,
int lpMaximumComponentLength,
int lpFileSystemFlags,
string lpFileSystemNameBuffer,
int nFileSystemNameSize
);
/**////
/// 获得盘符为drvID的硬盘序列号,缺省为C
///
///
///
public string HDVal(string drvID)
{
const int MAX_FILENAME_LEN = 256;
int retVal = 0;
int a =0;
int b =0;
string str1 = null;
string str2 = null;


\n

int i = GetVolumeInformation(
drvID + @”:\\”,
str1,
MAX_FILENAME_LEN,
ref retVal,
a,
b,
str2,
MAX_FILENAME_LEN
);


\n

return retVal.ToString();
}
public string HDVal()
{
const int MAX_FILENAME_LEN = 256;
int retVal = 0;
int a =0;
int b =0;
string str1 = null;
string str2 = null;


\n

int i = GetVolumeInformation(
“c:\\\\”,
str1,
MAX_FILENAME_LEN,
ref retVal,
a,
b,
str2,
MAX_FILENAME_LEN
);


\n

return retVal.ToString();
}
}


\n

来源:网络

\n