IAudioSessionControl2::GetProcessId 方法 (audiopolicy.h)

GetProcessId 方法检索音频会话的进程标识符。

语法

HRESULT GetProcessId(
  [out] DWORD *pRetVal
);

参数

[out] pRetVal

指向接收音频会话的进程标识符的 DWORD 变量的指针。

返回值

如果该方法成功,则它会返回 S_OK。 如果失败,可能的返回代码包括但不限于下表中显示的值。

返回值 说明
E_POINTER
pRetValNULL
AUDCLNT_S_NO_SINGLE_PROCESS
会话跨越多个进程。 在这种情况下, pRetVal 接收创建会话的进程的初始标识符。 若要使用此值,请包含以下定义:

#define AUDCLNT_S_NO_SINGLE_PROCESS AUDCLNT_SUCCESS (0x00d)

AUDCLNT_E_DEVICE_INVALIDATED
音频会话在默认音频设备上断开连接。

注解

此方法覆盖 应用程序在 pRetVal 中传递的值。

GetProcessId 检查音频会话是否已在默认设备上断开连接,或者会话是否已切换到另一个流。 在流切换的情况下,此方法将新流的状态信息传输到会话。 状态信息包括卷控件、元数据信息 (显示名称、图标路径) 和会话的属性存储。

要求

   
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 audiopolicy.h

另请参阅

IAudioSessionControl2