最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#使用WMI獲取硬盤參數(shù)的實(shí)現(xiàn)方法

 更新時(shí)間:2024年06月16日 11:14:07   作者:0564丶Kang  
因?yàn)樾枨笮枰婕矮@取硬盤的SN參數(shù),但是又不想要獲取到U盤或移動(dòng)硬盤設(shè)備的SN,所以就淺淺的研究了一下,本文給大家介紹了C#使用WMI獲取硬盤參數(shù)的實(shí)現(xiàn)方法,需要的朋友可以參考下

背景

因?yàn)樾枨笮枰婕矮@取硬盤的SN參數(shù),但是又不想要獲取到U盤或移動(dòng)硬盤設(shè)備的SN,所以就淺淺的研究了一下。
以下就是我目前發(fā)現(xiàn)的一些參數(shù)的作用,夠我用了。。。

涉及框架及庫(kù)

NuGet自己安裝哈

System.Management

WMI查詢小工具

為了方便我調(diào)試代碼,這里花了幾分鐘麻了一個(gè)WMI查詢結(jié)果輸出的小公舉
項(xiàng)目代碼就不發(fā)了,就只有兩個(gè)文件MainWindow.xaml.csMainWindow.xaml,從如此LOW的界面也能看出來(lái),沒(méi)有其它代碼了

前端代碼:

<Window x:Class="WMIQuery.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WMIQuery"
        mc:Ignorable="d" WindowStartupLocation="CenterScreen"
        Title="WMIQuery" Height="450" Width="800">
    <Grid Margin="5 5 5 5">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"></RowDefinition>
            <RowDefinition Height="Auto"></RowDefinition>
            <RowDefinition Height="Auto"></RowDefinition>
            <RowDefinition Height="Auto"></RowDefinition>
            <RowDefinition Height="*"></RowDefinition>
            <RowDefinition Height="Auto"></RowDefinition>
            <RowDefinition Height="Auto"></RowDefinition>
        </Grid.RowDefinitions>
        <TextBlock Grid.Row="0" Text="Query:"></TextBlock>
        <TextBox Grid.Row="1" x:Name="txt_query" TextWrapping="Wrap" AcceptsReturn="True" AcceptsTab="True" Height="60"></TextBox>
        <StackPanel Grid.Row="2" Margin="0 5 0 5" Orientation="Horizontal">
            <Button Content="執(zhí)行" x:Name="btn_start" Click="btn_start_Click"></Button>
        </StackPanel>
        <TextBlock Grid.Row="3" Text="Out:"></TextBlock>
        <TextBox Grid.Row="4" x:Name="txt_out"></TextBox>
    </Grid>
</Window>

后端代碼:

using System;
using System.Text;
using System.Windows;
using System.Management;

namespace WMIQuery
{
    /// <summary>
    /// MainWindow.xaml 的交互邏輯
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void btn_start_Click(object sender, RoutedEventArgs e)
        {
            var query = txt_query.Text;
            if (string.IsNullOrEmpty(query) || string.IsNullOrWhiteSpace(query))
            {
                MessageBox.Show("查詢語(yǔ)句不能為空!", "錯(cuò)誤", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }
            var outBuilder = new StringBuilder();
            try
            {
                var searcher = new ManagementObjectSearcher(query);
                int i = 0;
                foreach (var drive in searcher.Get())
                {
                    outBuilder.AppendLine($"===>Index:{i++}<===");
                    foreach (var item in drive.Properties)
                    {
                        outBuilder.AppendLine(item.Name + ": " + item.Value);
                    }
                    outBuilder.AppendLine();
                }
                txt_out.Text = outBuilder.ToString();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "錯(cuò)誤", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
    }
}

在Query框填寫我們的查詢語(yǔ)句,點(diǎn)擊執(zhí)行

在這里插入圖片描述

也可以只查詢我們想要的數(shù)據(jù),反正使用就像SQL一樣簡(jiǎn)單

在這里插入圖片描述

參數(shù)解釋

在這里插入圖片描述

在這里插入圖片描述

U盤

  • InterfaceTypeUSB
  • MediaTypeRemovable Media

移動(dòng)硬盤

  • InterfaceTypeSCSI或其他
  • MediaTypeExternal hard disk media

本機(jī)設(shè)備

  • InterfaceTypeSCSI、IDE或其他,具體怎么安裝,走什么總線
  • MediaTypeFixed hard disk media

總結(jié)

  • 移動(dòng)固態(tài)硬盤走的是SCSI也就是NVMe的總線,或者是IDE,也就是傳統(tǒng)的走線
  • 本地如果是NVMe的硬盤,走的應(yīng)該也是SCSI總線,如果是普通SATA接口的,應(yīng)該是IDE

不是所有的M.2硬盤都是NVMe協(xié)議

在這里插入圖片描述

  • InterfaceType的值,主要是看設(shè)備走什么總線去判斷的
  • 如果只是需要判斷移動(dòng)設(shè)備還是本機(jī)設(shè)備,直接在MediaType判斷就行,比如獲取本機(jī)固定的硬盤,不想包含U盤或移動(dòng)硬盤,只需要添加執(zhí)行下面的語(yǔ)句:
SELECT * FROM Win32_DiskDrive WHERE MediaType = 'Fixed hard disk media'

和SQL還是有區(qū)別的,語(yǔ)句后面不能有分號(hào),字段不能用AS映射成有好名稱,能用LIKE

在這里插入圖片描述

以上就是C#使用WMI獲取硬盤參數(shù)的實(shí)現(xiàn)方法的詳細(xì)內(nèi)容,更多關(guān)于C# WMI獲取硬盤參數(shù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C#使用FluentHttpClient實(shí)現(xiàn)請(qǐng)求WebApi

    C#使用FluentHttpClient實(shí)現(xiàn)請(qǐng)求WebApi

    FluentHttpClient 是一個(gè)REST API 異步調(diào)用 HTTP 客戶端,調(diào)用過(guò)程非常便捷,下面我們就來(lái)學(xué)習(xí)一下C#如何使用FluentHttpClient實(shí)現(xiàn)請(qǐng)求WebApi吧
    2023-12-12
  • C#11新特性之file關(guān)鍵字的用法教程

    C#11新特性之file關(guān)鍵字的用法教程

    C#11?添加了文件作用域類型功能:一個(gè)新的?file?修飾符,可以應(yīng)用于任何類型定義以限制其只能在當(dāng)前文件中使用。這樣,我們可以在一個(gè)項(xiàng)目中擁有多個(gè)同名的類。本文就來(lái)聊聊file關(guān)鍵字的用法,需要的可以參考一下
    2022-12-12
  • C#設(shè)置Word文本框中改變文字方向的方法

    C#設(shè)置Word文本框中改變文字方向的方法

    在Word中可插入文本框,默認(rèn)情況下插入的文本框中的文字方向?yàn)闄M向排列,對(duì)于一些特殊文檔的設(shè)計(jì)要求,需要改變文字方向,本文就詳細(xì)的介紹一下使用,感興趣的可以了解一下
    2021-06-06
  • c#簡(jiǎn)單判斷是否是閏年的方法代碼

    c#簡(jiǎn)單判斷是否是閏年的方法代碼

    這篇文章主要介紹了c#簡(jiǎn)單判斷是否是閏年的方法,大家參考使用吧
    2013-11-11
  • C# dump系統(tǒng)lsass內(nèi)存和sam注冊(cè)表詳細(xì)

    C# dump系統(tǒng)lsass內(nèi)存和sam注冊(cè)表詳細(xì)

    這篇文章主要介紹了C# dump系統(tǒng)lsass內(nèi)存和sam注冊(cè)表,在這里選擇 C# 的好處是體積小,結(jié)合 loadAssembly 方便免殺,希望對(duì)讀者們有所幫助
    2021-09-09
  • C#實(shí)現(xiàn)時(shí)間戳的簡(jiǎn)單方法

    C#實(shí)現(xiàn)時(shí)間戳的簡(jiǎn)單方法

    這篇文章主要介紹了C#實(shí)現(xiàn)時(shí)間戳的簡(jiǎn)單方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-04-04
  • ASP.NET總結(jié)C#中7種獲取當(dāng)前路徑的方法

    ASP.NET總結(jié)C#中7種獲取當(dāng)前路徑的方法

    本文主要介紹了7種獲取當(dāng)前路徑的方法,并做了代碼演示,分享給大家,感興趣的朋友可以參考一下。
    2016-03-03
  • C#內(nèi)置泛型委托之Func委托

    C#內(nèi)置泛型委托之Func委托

    這篇文章介紹了C#內(nèi)置泛型委托之Func委托的用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • C#中日期時(shí)間的簡(jiǎn)單操作

    C#中日期時(shí)間的簡(jiǎn)單操作

    這篇文章介紹了C#中日期時(shí)間的簡(jiǎn)單操作,有需要的朋友可以參考一下
    2013-08-08
  • C#實(shí)現(xiàn)三元組的使用示例

    C#實(shí)現(xiàn)三元組的使用示例

    本文介紹了C#中的三元組數(shù)據(jù)結(jié)構(gòu),以及如何使用三元組在C#中進(jìn)行一些特定的計(jì)算,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-11-11

最新評(píng)論

中江县| 达拉特旗| 赣州市| 尚义县| 仙居县| 高陵县| 库车县| 会同县| 江都市| 峨山| 荔浦县| 集贤县| 博白县| 平陆县| 连平县| 奈曼旗| 军事| 平乐县| 桐柏县| 三门峡市| 珲春市| 仙居县| 句容市| 怀远县| 靖西县| 恭城| 神池县| 长丰县| 鄂尔多斯市| 阳东县| 东阿县| 桂林市| 如皋市| 海宁市| 安远县| 镇江市| 丹东市| 遂宁市| 镇原县| 无棣县| 汽车|