【问题标题】:Enumerating processes that record or playback on Windows XP枚举在 Windows XP 上录制或播放的进程
【发布时间】:2010-11-15 13:49:11
【问题描述】:

我想枚举所有进程,它们对系统中的任何声卡都有一个打开的句柄。理想情况下,我想要一个“进程 - 声卡 - 动作”关系,其中动作可能是播放或录制。

是否有用于在 Windows XP 上获取此信息的 Win32 API?此 API 是否也适用于较新版本的 Windows?

【问题讨论】:

    标签: winapi process windows-xp audio wdk


    【解决方案1】:

    您当然可以通过分析进程的内存来找出进程中打开了哪些句柄。枚举进程是使用

    EnumProcesses()
    

    然后您可以使用系统 API(很遗憾,仅由 DDK 提供给您) 如果您想了解更多信息(我相信您会这样做),这里有一个非常有用的主题。

    Sysinternals

    【讨论】:

    • 感谢您的评论。 Sysinternals 线程展示了一种使用 Windows 驱动程序开发工具包枚举进程拥有的所有句柄的方法。我是 DDK 的新手,我只是使用 Process Explorer 来查看媒体播放器的句柄。现在我完全被“\Device\KSENUM#xxx\{some GUID}”之类的文件名弄糊涂了。我想这项任务已经超出了我的能力范围。
    • 我认为找出设备是什么并不难。如果您有兴趣,只需在注册表中查找它。它需要进行一些研究,但我相信您将能够找到您需要的东西。此外,您看到的 DDK 内容几乎是剪切和粘贴的内容。将自己的代码放在句柄查找函数中应该不会太难。
    猜你喜欢
    • 1970-01-01
    • 2013-03-29
    • 2013-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多