Condividi tramite


Funzione WsMatchPolicyAlternative (webservices.h)

Verifica che un'alternativa dei criteri sia compatibile con il vincolo di criteri specificato. Se l'alternativa è compatibile con le strutture dei vincoli vengono popolate con le informazioni sui criteri.

Nota Per informazioni sulle strutture dei vincoli, vedere Osservazioni in questa pagina.

 

Sintassi

HRESULT WsMatchPolicyAlternative(
  [in]           WS_POLICY             *policy,
  [in]           ULONG                 alternativeIndex,
  [in]           WS_POLICY_CONSTRAINTS *policyConstraints,
  [in]           BOOL                  matchRequired,
  [in]           WS_HEAP               *heap,
  [in, optional] WS_ERROR              *error
);

Parametri

[in] policy

Puntatore a un oggetto WS_POLICY contenente l'alternativa.

Nota Ogni WS_METADATA_ENDPOINT restituita da WsGetMetadataEndpoints contiene un oggetto criteri.
 

[in] alternativeIndex

Specifica l'indice in base zero che identifica l'alternativa da usare all'interno dell'oggetto criteri. Il numero di alternative presenti nell'oggetto criteri può essere ottenuto usando WsGetPolicyAlternativeCount.

[in] policyConstraints

Puntatore ai vincoli che specificano i criteri da associare ai campi da popolare se la funzione restituisce NOERROR.

Nota Se non viene specificato un vincolo di proprietà il valore predefinito del vincolo per tale proprietà specifica.

Per altre informazioni, vedere WS_POLICY_CONSTRAINTS .

 

[in] matchRequired

Indica se è necessaria o meno una corrispondenza.

Nota Se il valore è FALSE non è obbligatorio e, in combinazione con un criterio alternativo non corrispondente, la funzione restituisce S_FALSE.

Se il valore di questo parametro è TRUE , è necessario una corrispondenza e, se il criterio non corrisponde, la funzione restituisce un errore.

 

[in] heap

Puntatore a un oggetto Heap usato per archiviare tutti i dati che richiedono l'allocazione oltre il vincolo specificato.

Nota Ad esempio, i tipi di puntatore all'interno dei campi "out" del vincolo vengono allocati usando questo heap.
 

[in, optional] error

Puntatore a un oggetto WS_ERROR in cui devono essere archiviate informazioni aggiuntive sull'errore se la funzione ha esito negativo.

Valore restituito

Questa funzione può restituire uno di questi valori.

Codice restituito Descrizione
E_INVALIDARG
Uno o più argomenti non sono validi.
WS_E_INVALID_FORMAT
L'alternativa dei criteri non soddisfa i vincoli specificati e matchRequired è stato impostato su TRUE.

Il criterio o altri metadati erano in formato non valido.

S_FALSE
L'alternativa dei criteri non soddisfa i vincoli specificati e matchRequired è stato impostato su FALSE.
S_OK
L'alternativa dei criteri soddisfa i vincoli specifici. I campi out delle strutture dei vincoli sono stati riempiti con i valori dei criteri.

Commenti

Ognuno di questi tipi di dati contiene un campo struct denominato "out".

Il contenuto del campo esterno di queste strutture viene popolato da questa funzione se la chiamata restituisce NOERROR.
Nota Se la chiamata alla funzione ha esito negativo , il contenuto potrebbe essere stato parzialmente impostato e potrebbero essere state eseguite solo alcune allocazioni dall'oggetto heap specificato. Il contenuto del campo out non deve essere esaminato a meno che la funzione non restituisca NOERROR.

L'oggetto criteri può ritardare l'elaborazione fino a quando questa funzione non viene chiamata. Se l'elaborazione ha esito negativo, l'oggetto criteri è impostato su WS_POLICY_STATE_FAULTED.

 

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [app desktop | App UWP]
Server minimo supportato Windows Server 2008 R2 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione webservices.h
Libreria WebServices.lib
DLL WebServices.dll