关于硬盘序列号的类

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

namespace Wjb.ReadOrWriteIniAndReg
{
///

1<summary>   
2///  HardDiskVal  的摘要说明。   
3///  读取指定盘符的硬盘序列号   
4///  功能:读取指定盘符的硬盘序列号   
5///  </summary>

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

);

///

1<summary>
2
3///  获得盘符为  drvID  的硬盘序列号,缺省为C 
4
5///  </summary>

/// < param name=" drvID "> ///

1<returns></returns>

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 ();

}

}

}

Published At
Categories with Web编程
Tagged with
comments powered by Disqus