IWDFFile3::GetInitiatorProcessId 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 没有将新功能添加到 UMDF 1,并且对较新版本的 Windows 10 上的 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅 UMDF入门 。]
GetInitiatorProcessId 方法检索与 IWDFFile 接口关联的发起程序进程 ID。
语法
void GetInitiatorProcessId(
[out] DWORD *pdwProcessId
);
参数
[out] pdwProcessId
指定接收与文件关联的发起程序进程标识符的位置的地址(如果有)。 否则,该位置将接收 0。
返回值
没有
言论
从 Windows 8 开始,系统组件可能会代表应用发出创建。 驱动程序可以调用 GetInitiatorProcessId 来确定创建作最终适用于哪个进程。
GetInitiatorProcessId 如果没有与创建作关联的发起程序进程,则返回零。
有关框架文件对象的详细信息,请参阅 Driver-Created 与 Application-Created 文件对象。
例子
VOID
STDMETHODCALLTYPE
CMyQueue::OnCreateFile(
__in IWDFIoQueue *pWdfQueue,
__in IWDFIoRequest *pWdfRequest,
__in IWDFFile* pWdfFileObject
)
...
IWDFFile3* pWdfFileObject3 = NULL;
HRESULT hr = S_OK;
DWORD initiatorProcessId;
//
// Obtain IWDFFile3 interface from IWDFFile.
//
hr = pWdfFileObject->QueryInterface(IID_PPV_ARGS(&pWdfFileObject3));
if (!SUCCEEDED(hr))
{
goto Done;
}
pWdfFileObject3->GetInitiatorProcessId(&initiatorProcessId);
...
要求
要求 | 价值 |
---|---|
终止支持 | 在 UMDF 2.0 及更高版本中不可用。 |
目标平台 | 桌面 |
最低 UMDF 版本 | 1.11 |
标头 | wudfddi.h (包括 Wudfddi.h) |
DLL | WUDFx.dll |