1

任何人都知道,如何以编程方式获取 0001 、 0002 或 0005 等子键?从

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}

在这些键 0001, 0002 ...gas 中存储了有关 NIC 卡的信息!

4

2 回答 2

2

使用Microsoft.Win32.Registry/.RegistryKey类。
例子:

using Microsoft.Win32;
...
//Where CardInformation is some data structure to hold the information.

public static IEnumerable<CardInformation> GetCardInformation()
{
    string cardsKeyAddress =  "\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}";
    RegistryKey cardsKey = Registry.LocalMachine.OpenSubKey(cardsKeyAddress);
    string[] cardNumbers = cardsKey.GetSubKeyNames();

    foreach(string n in cardNumbers)
        yield return LoadCardInformation(cardsKeyAddress+"\\"+n);
}
static CardInformation LoadCardInformation(string key)
{
    //Get whatever values from the key to return
    CardInfomation info = new CardInformation();
    info.Name = Registry.GetValue(key, "Name", "Unnamed");
    return info;
}
于 2012-07-30T13:21:37.820 回答
1

你可以使用Microsoft.Win32.Registry和相同的类来做到这一点。在这里阅读更多

于 2012-07-30T11:57:37.407 回答