`
tiandirensoon
  • 浏览: 596059 次
文章分类
社区版块
存档分类
最新评论

获取硬盘相应序列号

 
阅读更多

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

namespace HKH.Common
{
/// <summary>
/// Summary description for clsIDE.
/// </summary>
public class clsIDE
{
/// <summary>
/// 获取硬盘相应分区的序列号
/// </summary>
/// <returns></returns>
public static string GetAllSerialNumber()
{
string Dri = "";

System.Management.ManagementClass mo = new System.Management.ManagementClass("Win32_LogicalDisk");

System.Management.ManagementObjectCollection mc = mo.GetInstances();

foreach (System.Management.ManagementObject m in mc)
{
if (Convert.ToString(m.Properties["DriveType"].Value) == "3")
{
Dri = Dri + m.Properties["VolumeSerialNumber"].Value.ToString() + "/n";
}
}

Dri = Dri.Substring(0, Dri.Length - 1);

return Dri;
}

/// <summary>
/// 获取硬盘相应分区的序列号
/// </summary>
/// <param name="Drive">盘符(如 C)</param>
/// <returns></returns>
public static string GetSpecialVolumeSerialNumber(string Drive)
{
string Dri = "";

System.Management.ManagementClass mo = new System.Management.ManagementClass("Win32_LogicalDisk");

System.Management.ManagementObjectCollection mc = mo.GetInstances();

foreach (System.Management.ManagementObject m in mc)
{
if (Convert.ToString(m.Properties["DriveType"].Value) == "3")
{
if (m.Properties["Name"].Value.ToString().ToUpper().Trim().Substring(0, 1) == Drive.ToUpper().Trim())
{
Dri = Dri + m.Properties["VolumeSerialNumber"].Value.ToString();

break;
}
}
}

return Dri;
}

private clsIDE()
{
}

}
}


分享到:
评论

相关推荐

    Linux读取U盘或者移动硬盘序列号并获取U盘或者移动硬盘分区名

    Linux读取U盘或者移动硬盘序列号并获取U盘或者移动硬盘分区名。基本原理如下: 当有外置 USB 插入的时候,会产生 /proc/scsi/usb-storage 目录,并在其中产生数字文件(形如 1 2 3 4),此文件存储了设备相关信息。 ...

    Java如何获取系统cpu、内存、硬盘信息

     前段时间摸索在Java中怎么获取系统信息包括cpu、内存、硬盘信息等,刚开始使用Java自带的包进行获取,但这样获取的内存信息不够准确并且容易出现找不到相应包等错误,所以后面使用sigar插件进行获取。下面列举出...

    linux下读取磁盘厂商名称及序列号实例

    在linux下,有时候为了获取磁盘厂商名称,以及相关信息,以利用这些信息对不同的磁盘做相应的处理。本代码实例调用了一个IOCTL命令读取磁盘厂商信息,以及磁盘序列号,并打印出来。在2.6版本上测试过!

    WindowsFormsApplication3.zip

    用C#获取硬盘序列号,CPU序列号,网卡MAC地址 一般软件的注册机制可以通过获取硬件序列号,然后用非对称加密算法生成相应的公钥和私钥。但是用Managed Code写获取硬盘序列号的代码不能解决所有的问题,比如不能在非...

    开源资产管理软件OCS+GLPI使用及安装教程,运维软件

    另外支持通过自动发现、手工导入的方式获取所有硬件设备的资产管理信息,并且生成报表、统计相应的数据等功能、系统还具有保修管理功能,能够实时的统计各个设备的保修状态、并且显示相应设备的保修时间、保修级别。...

    企业硬件网络管理软件,可视化设备运维,故障精准定位

    另外支持通过自动发现、手工导入的方式获取所有硬件设备的资产管理信息,并且生成报表、统计相应的数据等功能、系统还具有保修管理功能,能够实时的统计各个设备的保修状态、并且显示相应设备的保修时间、保修级别。...

    硬件监测,批量自动化部署,远程KVM

    另外支持通过自动发现、手工导入的方式获取所有硬件设备的资产管理信息,并且生成报表、统计相应的数据等功能、系统还具有保修管理功能,能够实时的统计各个设备的保修状态、并且显示相应设备的保修时间、保修级别。...

    海康卫视开发dll文件

    /// 相应的延时比较大,buffNum值越小,播放的延时很小, /// 但是当网络不太顺畅的时候,会有丢帧现象,感觉播放不会很流畅。 /// 一般设置的帧缓冲大于等于6帧时,音频预览才会正常, /// 如果不需要音频预览,...

    Foxpro 开发答疑160问

    149. 如何获得计算机硬盘卷序列号 502 150. 如何隐藏Windows的任务栏 504 151. 如何在系统启动时自动运行指定程序 506 第10章 报表设计 507 152. 如何使用报表设计器的工具栏与菜单 508 153. 如何理解报表...

    易语言 茶凉专用模块

    模块名称:茶凉专用模块 作者:茶凉 版本:2.0 本模块可以编程更简单,仅仅用核心支持库编写。 @备注: ...官方QQ群:92716369 ------------------------ -------------------------- ...------------------------------ ...

Global site tag (gtag.js) - Google Analytics