GetProcessReference-Funktion (shlwapi.h)
Ruft das prozessspezifische Objekt ab, das von SetProcessReference bereitgestellt wird, und erhöht die Verweisanzahl, um den Prozess am Leben zu halten.
Syntax
LWSTDAPI GetProcessReference(
[out] IUnknown **punk
);
Parameter
[out] punk
Die Adresse eines Zeigers, der bei erfolgreicher Rückgabe dieser Funktion auf das Objekt verweist, das von SetProcessReference an den Prozess bereitgestellt wird. Ihre Anwendung ist für die Freigabe dieser Ressource verantwortlich, wenn sie nicht mehr benötigt wird.
Ein Zeiger auf einen Freithread-IUnknown. Komponenten können diese Schnittstelle (über SHGetInstanceExplorer) verwenden, um zu verhindern, dass der Hostprozess beendet wird. Dieser Wert kann NULL sein. In diesem Fall wird der Prozessverweis nicht mehr für Komponenten zur Verfügung gestellt.
Rückgabewert
Keine
Bemerkungen
Es gibt eine Reihe von Komponenten, z. B. Shell-Erweiterungshandler, die als DLLs implementiert und in einem Hostprozess wie Windows Explorer (Explorer.exe) oder Windows Internet Explorer (Iexplore.exe) ausgeführt werden. Wenn der Benutzer den Hostprozess schließt, wird die Komponente in der Regel auch sofort heruntergefahren. Eine solche abrupte Beendigung kann probleme für einige Komponenten verursachen. Wenn eine Komponente beispielsweise einen Hintergrundthread verwendet, um Daten herunterzuladen oder Benutzeroberflächenfunktionen auszuführen, benötigt sie möglicherweise zusätzliche Zeit, um sich selbst sicher herunterzufahren.
Mit GetProcessReference können Komponenten, die in einem Hostprozess ausgeführt werden, einen Verweis auf den Hostprozess enthalten. GetProcessReference erhöht die Verweisanzahl des Hosts und gibt einen Zeiger auf die IUnknown-Schnittstelle des Hosts zurück. Durch das Halten dieses Verweises kann eine Komponente verhindern, dass der Hostprozess vorzeitig geschlossen wird. Nachdem die Komponente die erforderliche Verarbeitung abgeschlossen hat, sollte sie (*punk)->Release aufrufen, um den Verweis des Hosts freizugeben und das Beenden des Prozesses zuzulassen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | shlwapi.h |
Bibliothek | Shlwapi.lib |
DLL | Api-ms-win-shcore-thread-L1-1-0.dll |