Condividi tramite


Identificatori di contenitore per dispositivi DPWS

A partire da Windows 7, un dispositivo che supporta le estensioni PnP (PnP-X) e Device Profile for Web Services (DPWS) può specificare un ID contenitore includendo l'elemento XML ContainerId nel documento dei metadati del dispositivo. Per altre informazioni su DPWS e sul documento dei metadati del dispositivo DPWS, vedere la specifica DPWS.

Annotazioni

A partire da Windows 10, il sistema ignora l'ID contenitore fornito da un dispositivo e ne genera uno autonomamente. Per fare ciò, si utilizza un GUID dall'indirizzo di riferimento dell'endpoint del dispositivo (EPR) o un hash SHA-1 dell'indirizzo di riferimento dell'endpoint del dispositivo, se non è presente un GUID.

L'elemento XML ContainerId viene dichiarato come segue:

<df:ContainerId xmlns:df="">
  xs:string
</df:ContainerId>

Il tipo di elemento XML ContainerId è una stringa, per cui il valore è un identificatore univoco globale (GUID) formattato. Questa stringa è formattata come {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}.

Di seguito è riportato un esempio di elemento XML ContainerId .

<df:ContainerId xmlns:df="">
  {101392d0-5e91-11dd-ad8b-0800200c9a66}
</df:ContainerId>

L'elemento <XML ContainerId> deve trovarsi nella <sezione ThisDevice> del messaggio SOAP (Simple Object Access Protocol) per lo scambio di metadati del dispositivo. Nell'esempio seguente viene illustrato il posizionamento corretto dell'elemento <ContainerId> in un messaggio di scambio di metadati.

Annotazioni

Non si tratta di un documento completo di scambio di metadati DPWS. Per ulteriori informazioni su DPWS, consultare la documentazione DPWS.

<soap:Envelope
    xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
    xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
    xmlns:wsdisco="http://schemas.xmlsoap.org/ws/2005/04/discovery"
    xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex"
    xmlns:wsd="http://schemas.xmlsoap.org/ws/2006/02/devprof"
    xmlns:df="http://schemas.microsoft.com/windows/2008/09/devicefoundation">

    <soap:Header>
        <!-- Place SOAP header information here.-->
    </soap:Header>

    <soap:Body>
        <wsx:Metadata>

           <wsx:MetadataSection
                Dialect="http://schemas.xmlsoap.org/ws/2005/05/devprof/ThisModel">
                <wsd:ThisDevice>
                    <!-- Place ThisDevice metadata here.-->
                    <df:ContainerId>
                        <!--- Place the ContainerID GUID here.--->
                        {101392d0-5e91-11dd-ad8b-0800200c9a66}
                    </df:ContainerId>
                </wsd:ThisDevice>
            </wsx:MetadataSection>

        </wsx:Metadata>
    </soap:Body>
</soap:Envelope>

Se il documento dei metadati del dispositivo DPWS non include l'elemento XML ContainerId , il gestore Plug and Play (PnP) usa il valore dell'indirizzo di riferimento dell'endpoint del dispositivo come ID contenitore.