IWSDiscoveryPublisher::MatchResolve-Methode (wsddisco.h)
Bestimmt, ob eine Resolve-Nachricht mit dem angegebenen Host übereinstimmt, und sendet eine WS-Discovery ResolveMatches-Nachricht , wenn die Übereinstimmung erfolgt.
Syntax
HRESULT MatchResolve(
[in] const WSD_SOAP_MESSAGE *pResolveMessage,
[in] IWSDMessageParameters *pMessageParameters,
[in] LPCWSTR pszId,
[in] ULONGLONG ullMetadataVersion,
[in] ULONGLONG ullInstanceId,
[in] ULONGLONG ullMessageNumber,
[in, optional] LPCWSTR pszSessionId,
[in, optional] const WSD_NAME_LIST *pTypesList,
[in, optional] const WSD_URI_LIST *pScopesList,
[in, optional] const WSD_URI_LIST *pXAddrsList
);
Parameter
[in] pResolveMessage
Zeiger auf eine WSD_SOAP_MESSAGE Struktur, die die an den ResolveHandler der Benachrichtigungssenke übergebene ResolveHandler-Nachricht darstellt.
[in] pMessageParameters
Zeiger auf ein IWSDMessageParameters-Objekt , das die Übertragungsparameter darstellt, die an den ResolveHandler der Benachrichtigungssenke übergeben werden.
[in] pszId
Die logische oder physische Adresse des Geräts, die als Geräteendadresse verwendet wird. Eine logische Adresse hat das Format urn:uuid:{guid}
. Eine physische Adresse kann ein URI mit dem Präfix HTTP oder HTTPS oder einfach ein URI mit dem Präfix sein uri
. Verwenden Sie nach Möglichkeit eine logische Adresse.
[in] ullMetadataVersion
Aktuelle Metadatenversion.
[in] ullInstanceId
Bezeichner für die aktuelle instance des geräts, das veröffentlicht wird. Dieser Bezeichner muss bei jedem Neustart des Diensts erhöht werden. Weitere Informationen zu instance-Bezeichnern finden Sie in Anhang I der WS-Discovery-Spezifikation.
[in] ullMessageNumber
Leistungsindikator innerhalb des Bereichs des instance Bezeichners für die aktuelle Nachricht. Die Nachrichtennummer muss für jede Nachricht erhöht werden.
[in, optional] pszSessionId
Eindeutiger Bezeichner im Bereich des instance-Bezeichners für die aktuelle Sitzung. Dieser Parameter entspricht dem Sequenzbezeichner im AppSequence-Block in der Testnachricht. Weitere Informationen zu Sequenzbezeichnern finden Sie in Anhang I der WS-Discovery-Spezifikation.
Dieser Parameter kann NULL sein.
[in, optional] pTypesList
Zeiger auf eine WSD_NAME_LIST-Struktur , die die Liste der typen darstellt, die vom Veröffentlichungshost unterstützt werden. Kann NULL sein. Wenn pTypesList angegeben ist, verwendet MatchResolve WS-Discovery übereinstimmende Logik, um zu überprüfen, ob die Typen den in pResolveMessage angegebenen Typen entsprechen.
[in, optional] pScopesList
Zeiger auf eine WSD_URI_LIST Struktur, die die Liste der übereinstimmenden Bereiche darstellt, die vom Veröffentlichungshost unterstützt werden. Die Liste enthält Hashwerte in Zeichenfolgenform. Kann NULL sein. Wenn pScopesList angegeben ist, verwendet MatchResolve WS-Discovery übereinstimmende Logik, um zu überprüfen, ob die Bereiche mit den in pResolveMessage angegebenen Bereichen übereinstimmen.
[in, optional] pXAddrsList
Zeiger auf eine WSD_URI_LIST-Struktur , die die Liste der vom Veröffentlichungshost unterstützten Transportadressen darstellt. Jede Transportadressenzeichenfolge enthält eine Adresse und eine Portnummer, die für die Verbindung von einem Remotehost verwendet werden kann. pXAddrsList und pXAddrsList-Element> sind möglicherweise nicht NULL.
Rückgabewert
Mögliche Rückgabewerte sind unter anderem:
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich abgeschlossen. |
|
Eine oder mehrere der folgenden Bedingungen sind erfüllt:
|
|
Der Herausgeber wurde nicht gestartet. Durch das Anfügen einer Benachrichtigungssenke wird der Herausgeber gestartet. Um eine Senke anzufügen, rufen Sie RegisterNotificationSink auf. |
|
Unzureichender Arbeitsspeicher, um den Vorgang abzuschließen. |
Hinweise
MatchResolve sollte nur aufgerufen werden, wenn der Discoveryherausgeber einen ResolveHandler-Rückruf ausgestellt hat. pResolveMessage und pMessageParameters werden direkt vom Rückruf an MatchResolve übergeben. Der ResolveHandler übergibt auch Informationen, die vom Herausgeber benötigt werden, um zu bestimmen, ob die angegebene Resolve-Nachricht mit übereinstimmt, und wenn ja, um ggf. eine ResolveMatches-Antwort auszugeben.
MatchResolve sendet ResolveMatches-Nachrichten auf allen gebundenen Adaptern und gibt automatisch Nachrichtenneuübertragungen aus, wenn dies für WS-Discovery erforderlich ist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wsddisco.h (einschließen von Wsdapi.h) |
DLL | Wsdapi.dll |