IWDFFile3::GetInitiatorProcessId-Methode (wudfddi.h)
[Warnung: UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 in neueren Versionen von Windows 10 ist eingeschränkt. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF.]
Die GetInitiatorProcessId-Methode ruft die Initiatorprozess-ID ab, die einer IWDFFile-Schnittstelle zugeordnet ist.
Syntax
void GetInitiatorProcessId(
[out] DWORD *pdwProcessId
);
Parameter
[out] pdwProcessId
Gibt die Adresse eines Speicherorts an, der den der Datei zugeordneten Initiatorprozessbezeichner empfängt, sofern vorhanden. Andernfalls empfängt der Standort 0.
Rückgabewert
Keine
Bemerkungen
Ab Windows 8 kann eine Systemkomponente eine Erstellung im Auftrag einer App ausgeben. Der Treiber kann GetInitiatorProcessId aufrufen, um zu bestimmen, für welchen Prozess der Erstellungsvorgang letztendlich vorgesehen ist.
GetInitiatorProcessId gibt null zurück, wenn dem Erstellungsvorgang kein Initiatorprozess zugeordnet ist.
Weitere Informationen zu Frameworkdateiobjekten finden Sie unter Driver-Created versus Application-Created File Objects.
Beispiele
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);
...
Anforderungen
Anforderung | Wert |
---|---|
Ende des Supports | In UMDF 2.0 und höher nicht verfügbar. |
Zielplattform | Desktop |
UMDF-Mindestversion | 1.11 |
Kopfzeile | wudfddi.h (include Wudfddi.h) |
DLL | WUDFx.dll |