2013-10-08 184 views
1

我試圖用波紋管的代碼來獲取音頻輸入設備名稱:音頻設備輸入名稱截斷

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個字符。

如何獲得完整的名稱?

回答

0

WAVEINCAPS結構的szPname成員僅限於MAXPNAMELEN字符,它被定義爲32

你可以嘗試使用,可能沒有這個限制的另一種技術使用DirectSound列舉,例如。