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

王朝c#·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

using System;

using System.IO;

using System.Runtime.InteropServices;

using System.Text;

using Microsoft.Win32;

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;

int i = GetVolumeInformation(

drvID + @":\",

str1,

MAX_FILENAME_LEN,

ref retVal,

a,

b,

str2,

MAX_FILENAME_LEN

);

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;

int i = GetVolumeInformation(

"c:\\",

str1,

MAX_FILENAME_LEN,

ref retVal,

a,

b,

str2,

MAX_FILENAME_LEN

);

return retVal.ToString();

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航