Winapi 枚举在Windows XP上录制或播放的进程

Winapi 枚举在Windows XP上录制或播放的进程,winapi,process,windows-xp,audio,wdk,Winapi,Process,Windows Xp,Audio,Wdk,我想列举所有进程,它们对系统中的任何声卡都有一个打开的句柄。理想情况下,我想要一个“过程-声卡-动作”关系,其中动作可能是回放或录制 是否有Win32 API用于在Windows XP上获取此信息?此API是否也适用于较新版本的Windows?您当然可以通过分析进程的内存来确定进程中打开了哪些句柄。枚举进程是使用 EnumProcesses() 然后可以使用系统API(不幸的是,仅由DDK提供) 如果你想要更多的信息(我相信你会),这里有一个非常有用的线索 谢谢您的评论。Sysinternal

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


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

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

EnumProcesses()
然后可以使用系统API(不幸的是,仅由DDK提供) 如果你想要更多的信息(我相信你会),这里有一个非常有用的线索


谢谢您的评论。Sysinternals线程显示了一种使用Windows驱动程序开发工具包枚举进程所有句柄的方法。我是DDK的新手,我只是使用Process Explorer来查看媒体播放器的手柄。现在,像“\Device\KSENUM#xxx\{some GUID}”这样的文件名完全把我弄糊涂了。我想这项任务已经超出了我的能力范围。我想知道这个设备是什么并不难。如果你感兴趣的话,就在登记处查一下。这需要一些研究,但我相信你会找到你需要的。此外,你看到的DDK的东西几乎都是剪切和粘贴的东西。将自己的代码放在句柄查找函数中应该不会太困难。