Я хотел бы получить полное имя всех подключенных микрофонов. Я искал ответ, но ответа не отвечал.Как получить полное имя микрофона в C#?
Позвольте мне показать некоторые примеры:
1.
ManagementObjectSearcher mo = new ManagementObjectSearcher("select * from Win32_SoundDevice");
foreach (ManagementObject soundDevice in mo.Get())
{
MessageBox.Show(soundDevice.GetPropertyValue("Caption").ToString());
// or
MessageBox.Show(soundDevice.GetPropertyValue("Description").ToString());
//or
MessageBox.Show(soundDevice.GetPropertyValue("Manufacturer").ToString());
//or
MessageBox.Show(soundDevice.GetPropertyValue("Name").ToString());
//or
MessageBox.Show(soundDevice.GetPropertyValue("ProductName").ToString());
}
Все эти добытчики показывает: "Устройство USB Audio" или "Устройство, совместимое с High Definition стандарт".
2.
WaveInCapabilities[] devices = GetAvailableDevices();
foreach(device in devices)
{
MessageBox.Show(device.ProductName);
}
Тот же ответ: "Устройство USB Audio" или "Устройство, совместимое со стандартом High Definition".
Я хочу получить полное имя. Я имею в виду, что-то вроде: «Sennheiser microphone USB». Возможно ли это? Я нашел: Get the full name of a waveIn device, но ссылка в нем сломана, и я не вижу dsound.lib для C# (для использования DirectSoundCaptureEnumerate). Я ничего не пропустил? Или есть другой вариант?
Является ли полное имя вашего устройства видимым * в любом месте * в Windows? (Диспетчер устройств и т. Д.) – Heinzi
@Heinzi Нет, я не вижу полного имени устройства в диспетчере устройств. Означает ли это, что это невозможно сделать? – Darooks
Ну, если Windows не знает полного имени устройства, я не думаю, что есть способы его получить. (Но я не эксперт в Windows API, поэтому я был бы рад, если кто-то может доказать, что я не прав.) – Heinzi