Come registrare un dispositivo con l'host del dispositivo
È possibile registrare un dispositivo in esecuzione o un dispositivo non in esecuzione.
Registrazione di un dispositivo in esecuzione
I dispositivi vengono registrati usando l'interfaccia IUPnPRegistrar . Solo gli amministratori possono registrare i dispositivi in esecuzione. Per registrare un dispositivo con un oggetto controllo dispositivo in esecuzione, un'applicazione deve richiamare IUPnPRegistrar::RegisterRunningDevice, passando quanto segue:
- Testo della descrizione del dispositivo.
- Puntatore IUnknown all'oggetto controllo del dispositivo.
- Stringa di inizializzazione passata al metodo IUPnPDeviceControl::Initialize dell'oggetto controllo del dispositivo.
- Posizione della directory delle risorse.
- Durata del dispositivo.
- Il parametro ID dispositivo (un parametro OUT), ovvero il valore restituito di questa chiamata; viene restituito un puntatore all'ID dispositivo in C++.
Registrazione di un dispositivo non in esecuzione
Per impostazione predefinita, solo gli amministratori e gli utenti interattivi possono registrare dispositivi non in esecuzione. Per registrare un dispositivo con un oggetto controllo dispositivo non in esecuzione, l'applicazione usa il metodo IUPnPRegistrar::RegisterDevice .
Per registrare a livello di codice un dispositivo con un oggetto controllo dispositivo non in esecuzione, l'applicazione deve richiamare IUPnPRegistrar::RegisterDevice e passarlo ai parametri seguenti:
- Testo della descrizione del dispositivo.
- ProgID dell'oggetto controllo del dispositivo.
- Stringa di inizializzazione passata al metodo IUPnPDeviceControl::Initialize dell'oggetto controllo del dispositivo.
- ID contenitore.
- Posizione della directory delle risorse.
- Durata del dispositivo.
- Il parametro ID dispositivo (un parametro OUT), ovvero il valore restituito di questa chiamata; viene restituito un puntatore all'ID dispositivo in C++.
Le registrazioni dei dispositivi non in esecuzione possono essere configurate in modo permanente tra gli avvio del sistema (i dispositivi non vengono pubblicati durante la fase di arresto). Pertanto, se sono configurati in questo modo, i dispositivi vengono pubblicati e annunciati ogni volta che il computer viene avviato.