1
Q
連接到系統
A
回答
6
您需要訪問必要的Windows API函數。
這個類應該讓你開始 - Win32.GetSoundDevices返回設備名稱列表。在Windows SDK中查找WAVEOUTCAPS以獲取您可以獲得的其他信息的詳細信息。
public class Win32 {
[DllImport("winmm.dll", SetLastError=true)]
static extern uint waveOutGetNumDevs();
[DllImport("winmm.dll", SetLastError = true, CharSet = CharSet.Auto)]
public static extern uint waveOutGetDevCaps(uint hwo,ref WAVEOUTCAPS pwoc,uint cbwoc);
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]
public struct WAVEOUTCAPS {
public ushort wMid;
public ushort wPid;
public uint vDriverVersion;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 32)]
public string szPname;
public uint dwFormats;
public ushort wChannels;
public ushort wReserved1;
public uint dwSupport;
}
public static string [] GetSoundDevices() {
uint devices = waveOutGetNumDevs();
string [] result = new string[devices];
WAVEOUTCAPS caps = new WAVEOUTCAPS();
for(uint i = 0; i < devices; i++) {
waveOutGetDevCaps(i, ref caps, (uint)Marshal.SizeOf(caps));
result[i] = caps.szPname;
}
return result;
}
}
+0
感謝您的解決方案 – usr021986 2011-05-16 09:20:10
相關問題
- 1. 連接到系統GHC
- 2. 連接SAP系統
- 3. 將多個BW系統連接到一個R/3系統
- 4. 連接到MSN信使在android系統
- 5. cURL PHP:連接到進銷存系統
- 6. 從另一個系統連接到horneQ
- 7. 通過UCanAccess連接到系統DSN
- 8. 檢查系統是否連接到Kafka
- 9. 無法連接到遠程系統
- 10. Android NDK - 連接()塊系統
- 11. 通過本地系統連接到遠程桌面連接
- 12. 如何連接到母系統中的虛擬箱系統的本地主機?
- 13. 的Python 2.7,WMI意外COM錯誤連接到域系統-2147352567非域系統
- 14. 使用Delphi編程連接Avaya系統與我的系統?
- 15. 問題而連接爲sqlplus的系統/系統@ ORCL
- 16. 連接外部系統|如何設計系統
- 17. 通過套接字連接到遠程系統
- 18. pos explorer沒有找到任何設備連接到C#系統#
- 19. 登錄系統的sqlserver連接錯誤
- 20. 系統之間的連接異常
- 21. php ssh連接:select子系統
- 22. 失去連接,系統錯誤:111
- 23. 連接系統與活動目錄(AD)
- 24. Python中的線性系統連接scipy
- 25. 系統打開RStudio關閉連接
- 26. MySQL連接丟失:系統錯誤:110
- 27. 如何連接到系統ODBC連接是Windows 7上的Access 2010
- 28. 系統錯誤111(連接被拒絕),無法連接
- 29. 無法連接到oracle系統帶有水晶報告的DSN
- 30. 無法連接到MongoDB服務器中斷的系統調用
複製 - http://stackoverflow.com/questions/1525320/how-to-enumerate-audio-out-devices-in-c – 2011-05-09 12:11:27