IUPnPReregistrar::ReregisterDevice-Methode (upnphost.h)

Die ReregisterDevice-Methode registriert ein Gerät erneut beim Gerätehost. Die Geräteinformationen werden vom Gerätehost gespeichert. Anschließend gibt der Gerätehost einen Gerätebezeichner zurück und veröffentlicht und kündigt das Gerät im Netzwerk an.

Syntax

HRESULT ReregisterDevice(
  [in] BSTR bstrDeviceIdentifier,
  [in] BSTR bstrXMLDesc,
  [in] BSTR bstrProgIDDeviceControlClass,
  [in] BSTR bstrInitString,
  [in] BSTR bstrContainerId,
  [in] BSTR bstrResourcePath,
  [in] long nLifeTime
);

Parameter

[in] bstrDeviceIdentifier

Gibt den Gerätebezeichner des Geräts an. Verwenden Sie den von IUPnPRegistrar::RegisterDevice zurückgegebenen Bezeichner.

[in] bstrXMLDesc

Gibt die XML-Gerätebeschreibungsvorlage des zu registrierenden Geräts an.

[in] bstrProgIDDeviceControlClass

Gibt die ProgID eines Gerätesteuerungsobjekts an, das die IUPnPDeviceControl-Schnittstelle implementiert. Diese Schnittstelle muss ein prozessinterner COM-Server (CLSCTX_INPROC_SERVER) sein und für LocalService zugänglich sein.

[in] bstrInitString

Gibt die für das Gerät spezifische Initialisierungszeichenfolge an. Diese Zeichenfolge wird später an IUPnPDeviceControl::Initialize übergeben.

[in] bstrContainerId

Gibt eine Zeichenfolge an, die die Prozessgruppe identifiziert, zu der das Gerät gehört. Alle Geräte mit derselben Container-ID sind im gleichen Prozess enthalten.

[in] bstrResourcePath

Gibt den Speicherort des Ressourcenverzeichnisses des Geräts an. Dieses Ressourcenverzeichnis enthält die Symboldateien und Dienstbeschreibungen, die in der Gerätebeschreibungsvorlage bstrXMLDesc angegeben sind. Das Ressourcenverzeichnis kann auch die Präsentationsdateien enthalten. Dies ist jedoch optional.

[in] nLifeTime

Gibt die Lebensdauer der Geräteankündigung in Sekunden an. Nach Ablauf des Timeouts werden die Ankündigungen aktualisiert. Wenn Sie null angeben, wird der Standardwert 1800 (30 Minuten) verwendet. Der zulässige Mindestwert ist 900 (15 Minuten). Wenn Sie etwas kleiner als 900 angeben, wird ein Fehler zurückgegeben.

Rückgabewert

Wenn die Methode erfolgreich ist, wird der Rückgabewert S_OK. Andernfalls gibt die Methode einen der in WinError.h definierten COM-Fehlercodes oder einen der folgenden UPnP-spezifischen Fehlercodes zurück.

Rückgabecode Beschreibung
UPNP_E_DEVICE_NOTREGISTERED
Das Gerät wurde nicht registriert. Verwenden Sie RegisterRunningDevice , um ein nicht registriertes Gerät zu registrieren.
UPNP_E_DEVICE_RUNNING
Das Gerät wird derzeit ausgeführt. Verwenden Sie ReregisterRunningDevice , um ein Gerät erneut zu registrieren, während es ausgeführt wird.
UPNP_E_DUPLICATE_NOT_ALLOWED
Es ist ein dupliziertes Element vorhanden.
UPNP_E_DUPLICATE_SERVICE_ID
Eine doppelte Dienst-ID für einen Dienst innerhalb desselben übergeordneten Geräts ist vorhanden.
UPNP_E_INVALID_DESCRIPTION
Die Gerätebeschreibung ist ungültig.
UPNP_E_INVALID_ICON
Im Symbolelement der Gerätebeschreibung ist ein Fehler vorhanden.
UPNP_E_INVALID_SERVICE
Ein Fehler ist in einem Dienstelement in der Gerätebeschreibung vorhanden.
UPNP_E_REQUIRED_ELEMENT_ERROR
Ein erforderliches Element fehlt.

Hinweise

Verwenden Sie den in pbstrDeviceIdentifier zurückgegebenen Bezeichner, wenn Sie IUPnPRegistrar::UnregisterDevice aufrufen.

Häufige Fehler, die beim Aufrufen dieser Funktion auftreten können, sind:

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Nicht unterstützt
Zielplattform Windows
Kopfzeile upnphost.h
DLL Upnphost.dll

Weitere Informationen

IUPnPRegistrar

IUPnPReregistrar