接続されているすべてのマイクのフルネームを取得したいと思います。私はグーグルで答えを見つけましたが、私を満足させる答えはありませんでした。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" または "ハイビジョン規格と互換性のあるデバイスを"。
2.
WaveInCapabilities[] devices = GetAvailableDevices();
foreach(device in devices)
{
MessageBox.Show(device.ProductName);
}
同じ答え: "デバイスのオーディオUSB" または "ハイビジョン規格と互換性のあるデバイス"。
私は完全な名前を取得したいと思います。つまり、「SennheiserマイクUSB」のようなものです。それも可能ですか?私は見つけた:Get the full name of a waveIn deviceしかし、その中のリンクが壊れていると私は(DirectSoundCaptureEnumerateを使用するために)C#のためのdsound.libが表示されません。 何も分からないのですか?それとも他の選択肢がありますか?
Windowsのどこからでもデバイスのフルネームが表示されますか? (デバイスマネージャなど) – Heinzi
@Heinziいいえ、デバイスマネージャにデバイスのフルネームが表示されません。それはできないことを意味しますか? – Darooks
Windowsが完全なデバイス名を知らない場合、私はそれを取得する方法はないと思います。 (しかし、私はWindows APIの専門家ではないので、誰かが私を間違っていると分かると嬉しいです。) – Heinzi