GetOwnerModuleFromUdp6Entry-Funktion (iphlpapi.h)

Die GetOwnerModuleFromUdp6Entry-Funktion ruft Daten zu dem Modul ab, das die Kontextbindung für einen bestimmten IPv6 UDP-Endpunkt in einer MIB-Tabellenzeile ausgestellt hat.

Syntax

IPHLPAPI_DLL_LINKAGE DWORD GetOwnerModuleFromUdp6Entry(
  [in]      PMIB_UDP6ROW_OWNER_MODULE     pUdpEntry,
  [in]      TCPIP_OWNER_MODULE_INFO_CLASS Class,
  [out]     PVOID                         pBuffer,
  [in, out] PDWORD                        pdwSize
);

Parameter

[in] pUdpEntry

Ein Zeiger auf eine MIB_UDP6ROW_OWNER_MODULE Struktur, die den IPv6 UDP-Endpunkteintrag enthält, der zum Abrufen des Besitzermoduls verwendet wird.

[in] Class

TCPIP_OWNER_MODULE_INFO_CLASS Enumerationswert, der den Datentyp angibt, der in Bezug auf das Besitzermodul abgerufen werden soll.

[out] pBuffer

Der Puffer, der eine TCPIP_OWNER_MODULE_BASIC_INFO-Struktur mit den Besitzermoduldaten enthält. Der Typ der in diesem Puffer zurückgegebenen Daten wird durch den Wert des Class-Parameters angegeben.

Die folgenden Strukturen werden für die Daten in Buffer verwendet, wenn Class auf den entsprechenden Wert festgelegt ist.

Klassenenumerationswert Pufferdatenformat
TCPIP_OWNER_MODULE_BASIC_INFO TCPIP_OWNER_MODULE_BASIC_INFO

[in, out] pdwSize

Die geschätzte Größe der in Buffer zurückgegebenen Struktur in Bytes. Wenn dieser Wert zu klein festgelegt ist, wird ERROR_INSUFFICIENT_BUFFER von dieser Funktion zurückgegeben, und dieses Feld enthält die richtige Größe der Struktur.

Rückgabewert

Wenn der Aufruf erfolgreich ist, wird der Wert NO_ERROR zurückgegeben. Andernfalls wird der folgende Fehler zurückgegeben.

Rückgabecode Beschreibung
ERROR_INSUFFICIENT_BUFFER
Für die Tabelle wurde nicht genügend Speicherplatz zugewiesen. Die Größe der Tabelle wird im pdwSize-Parameter zurückgegeben und muss in einem nachfolgenden Aufruf dieser Funktion verwendet werden, um die Tabelle erfolgreich abzurufen.

Hinweise

Der Buffer-Parameter enthält nicht nur eine Struktur mit Zeigern auf bestimmte Daten, z. B. Zeiger auf die Zeichenfolgen, die den Namen und Pfad des Besitzermoduls enthalten, sondern auch die tatsächlichen Daten selbst. dies ist der Name und die Pfadzeichenfolgen. Stellen Sie daher beim Berechnen der Puffergröße sicher, dass genügend Platz für die Struktur und die Daten vorhanden ist, auf die die Elemente der Struktur verweisen.

Die Auflösung von UDP-Tabelleneinträgen in Besitzermodule ist eine bewährte Methode. In einigen Fällen kann der in der TCPIP_OWNER_MODULE_BASIC_INFO-Struktur zurückgegebene Besitzermodulname ein Prozessname sein, z. B. "svchost.exe", ein Dienstname wie "RPC" oder ein Komponentenname wie "timer.dll".

Bei Computern, die unter Windows Vista oder höher ausgeführt werden, wird der Zugriff auf die pModuleName - und pModulePath-Member der TCPIP_OWNER_MODULE_BASIC_INFO-Struktur durch die Benutzerkontensteuerung (UAC) eingeschränkt. Wenn eine Anwendung, die diese Funktion aufruft, von einem Benutzer ausgeführt wird, der als Mitglied der Administratorgruppe angemeldet ist, wird dieser Aufruf erfolgreich ausgeführt, aber der Zugriff auf diese Member gibt eine leere Zeichenfolge zurück, es sei denn, die Anwendung wurde in der Manifestdatei mit einem requestedExecutionLevel gekennzeichnet, der auf requireAdministrator festgelegt ist. Wenn in der Anwendung unter Windows Vista oder höher diese Manifestdatei fehlt, muss ein Benutzer, der sich als Mitglied der Gruppe "Administratoren" angemeldet hat, das nicht der integrierte Administrator ist, die Anwendung dann in einer erweiterten Shell als integrierter Administrator (RunAs-Administrator) ausführen, damit der Zugriff auf die geschützten pModuleName - und pModulePath-Member zulässig ist.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista, Windows XP mit SP2 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008, Windows Server 2003 mit SP1 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile iphlpapi.h
Bibliothek Iphlpapi.lib
DLL Iphlpapi.dll