Я пытаюсь получить имя устройства ввода звука с кодом ниже:
WAVEINCAPS woc;
unsigned long iNumDevs = waveInGetNumDevs();
for (unsigned long i = 0; i < iNumDevs; i++)
{
if (!waveInGetDevCaps(i, &woc, sizeof(WAVEINCAPS)))
{
devices.push_back(woc.szPname);
}
}
Когда я смотрю в devices
, есть все имена устройств ввода, но все имена усекаются до 32 символов.
Как я могу получить полное имя?
szPname
член WAVEINCAPS
структура ограничена MAXPNAMELEN
символы, которые определены как 32.
Вы можете попробовать перечислить, используя другую технологию, которая может не иметь этого ограничения, например, используя DirectSound.
Других решений пока нет …