我想轻松在扬声器和耳机之间切换。可以吗?
答案1
有多种方法可以切换默认音频设备。但是,由于没有公开的 API,因此这些技术大多涉及以下黑客攻击:尝试发送密钥,这不是很稳健。
API 保持封闭且未记录,以避免硬件不兼容,这样制造商就不会像浏览器上的默认主页一样争抢它。然而,有人设法在 Windows 7 中的命令行上切换音频设备,WarNov 已经在评论中“已在 Windows 8 中测试。运行良好”。
请记住,它使用的是未记录的 API,因此可能会在未来版本的 Windows 中出现故障。
正如 Jerry 提到的,你可以创建带有图块的快捷方式,只需让它调用 C++ 代码即可。如果你想在 .NET 中使用它,你也可以使用包装器。
该代码也在 GitHub 上发布,如下所示音频端点控制器,并附有简单易懂的使用文档:
> EndPointController.exe --help
Lists active audio end-point playback devices or sets default audio end-point
playback device.
USAGE
EndPointController.exe [-a] [-f format_str] Lists audio end-point playback
devices that are enabled.
EndPointController.exe device_index Sets the default playback device
with the given index.
OPTIONS
-a Display all devices, rather than just active devices.
-f format_str Outputs the details of each device using the given format
string. If this parameter is ommitted the format string
defaults to: "Audio Device %d: %ws"
Parameters that are passed to the 'printf' function are
ordered as follows:
- Device index (int)
- Device friendly name (wstring)
- Device state (int)
- Device default? (1 for true 0 for false as int)
- Device description (wstring)
- Device interface friendly name (wstring)
- Device ID (wstring)''
答案2
好吧,磁贴可以是批处理文件或 PowerShell 文件的快捷方式。点击磁贴将执行批处理或 PS 文件。这意味着您可以创建一个磁贴来执行 Windows 中的几乎所有操作。
以下是 CS 技术:
未标记为答案的答案似乎是 Windows 7/8 的解决方案。
很遗憾,对于这个特定的 API 来说,这可能已经是最好的了。
以下是快捷方法:http://www.howtogeek.com/74331/how-to-create-your-own-windows-8-shortcuts-for-shutdown-perhaps/
顺便说一句,Windows RT 设备也有 PowerShell