Il titolo è per più per attirare l'attenzione, perché quello di cui voglio parlare non ha come scopo finale quello di spiegare come dotare di un display LCD il vostro Media Center Edition, ma di poterlo sviluppare nel caso ne aveste uno.
Gli MCE più costosi dispongono di un frontalino per poter mostrare informazioni sullo stato in modo da non essere costretti a tener accesa la TV per ascoltare per esempio la musica. Questo è possibile al Media State Service. Trovate nell'SDK una sezione dedicata con la voce "Media State Aggregation Service". Qui c'è pochissimo, ma se andate nella directory dell'SDK\MSAS Sample trovate tutto quello che serve.
In pratica MCE cerca nel registro tutti i componenti COM che implementano la categoria {FCB0C2A3-9747-4C95-9D02-820AFEDEF13F} e l'interfaccia IMediaStatusSink. Si tratta di un interfaccia COM, ma in quella directory che vi ho segnalato trovate una classe wrapper MSASState.dll e due guide per le references del wrapper e su come funziona e installare un esempio managed che trovate nella cartella MediaDisplaySampleApplication. Questo non fa altro che mostrare su un finto display che verrà mostrato sullo schermo ciò che MCE sta facendo. In pratica abbiamo tutto quello che ci serve.
Attenzione all'instazione: sulla guida c'è tutto, ma MSASState.dll va registrato come componente COM usando regasm.exe (o creando le chiavi a mano) e aggiungendo tra "ImplementedCategories" la chiave prima citata. Questo assembly verrà inizializzato e su di esso potranno basarsi tutte le nostre applicazione State Service.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
- Tastiera MCE su Windows XP, il 3 ottobre 2007 alle 13:45
- Gestire lo standby di MCE, il 24 agosto 2006 alle 17:10
- Media Center in Windows Vista, il 29 marzo 2006 alle 08:58
- Avviare la TV in automatico, il 14 febbraio 2006 alle 08:57
- Le novità di Media Center in Windows Vista, il 6 gennaio 2006 alle 23:29
- Addins MCE con Rollup 2, il 10 dicembre 2005 alle 17:34