Bueno, pues esto del .NET Compact Framework, sus versiones,
sus pompas y sus obras, era una asignatura pendiente con la que tarde o temprano tenía que tropezar... y tropecé.
Para quien no lo sepa aún, es un entorno, conjunto de módulos y componentes que amplían la funcionalidad de Windows y permiten que se ejecuten programas diseñados (por ejemplo, con Visual Studio) para hacer uso de dichos componentes. De entrada, no confundir el
.NET, a secas, para Windows de PC, de
sobremesa, y el
.NET Compact Framework o
.NET CF,
versión compacta para Pocket PC.
El .NET CF ya se incluye en la ROM de los Pocket PC desde la versión de Windows Mobile 2003. Ello quiere decir que sólo necesita ser instalado
manualmente en las máquinas con sistema PPC 2002. De las anteriores, con sistema PPC 2000, desconozco: a) Si admiten la instalación de .NET CF b) Si actualmente seguirá funcionando alguna por ahí.
Existe una versión inicial 1.0 de .NET CF, y una serie de revisiones o
Service Packs que han ido corrigiéndola o mejorándola. De hecho, simpre ha habido cosas que en teoría funcionaban pero en la práctica no (en Inp, sin ir más lejos, colores desaparecidos, iconos perdidos...). Se puede decir que con el Service Pack 3 (.NET CF 1.0 SP3), última entrega de la versión 1.0, todo ha empezado a funcionar con normalidad. En la Opción de Ayuda->Entorno de funcionamiento de Inp esta versión se identifica como
1.0 Build
4292 Revisión
0.
Casi a la vez que Windows Mobile 5.0 se anunció un nuevo .NET 2.0 (con su correspondiente .NET CF 2.0): nuevas funcionalidades y prestaciones. Y problemas, lógicamente, que aconsejaron continuar con el anterior, más estable. De hecho muchas máquinas con WM 5.0 continúan hoy trayendo instalado el 1.0 SP3.
A partir de aquí empieza la locura. Por el momento sólo tengo pruebas, muchas preguntas, y respuestas no siempre claras.
- ¿Se puede eliminar .NET CF de la máquina si está grabado en ROM? Pues no, lógicamente. Además no aparece en la lista de programas instalados.
- ¿Y si uno instala el .NET CF SP3 sobre el primitivo de la máquina, se puede borrar? Sí, porque aparecerá en la lista de instalados y estará en una memoria
borrable, pero el primitivo persistirá.
- ¿Entonces, al instalar uno nuevo, si se conserva el anterior en ROM, quiere eso decir que hay dos .NET CF simultáneamente en la máquina? Pues me temo que sí, aunque entre distintas entregas de la misma versión 1.0 parece haber una especie de solapamiento, de manera que la más reciente oculta a la más antigua... No lo tengo claro.
- ¿Se puede instalar una versión 2.0 conservando la 1.0? Pues no sólo es que se pueda sino que
la nueva no sobreescribe a la antigua. Los ficheros que componen el .NET CF, que empiezan por GAC y se ubican en el directorio \Windows, tienen nombres distintos, con lo que coexisten los antiguos con los nuevos.
- Al haber entonces dos .NET CF en la máquina, ¿cuál usan las aplicaciones? Pues buena pregunta. Inp usa la 1.0, incluso si está instalada encima la 2.0. Se me ocurre que es debido a que no necesita ni busca ninguna de las funcionalidades que ofrece la 2.0 y por eso
se conforma con la 1.0, pero todo son hipótesis.
- ¿Y si instalo la 2.0, me vale y quiero desinstalar la 1.0 anterior... puedo? Pues depende. Si la 1.0 procede de una instalación manual y como tal figura en la lista de programas instalados, sí; de lo contrario, mal lo veo.
- Ya anda por ahí una versión 2.0 SP1 ¿Merece la pena? ¿Es fiable? Pues estoy intentando probarla, de momento en una máquina con WM 2003, y no consigo saberlo. Vuelve a hacer con los colores algunas de las bobadas de las primeras versiones 1.0, y que habían quedado subsanadas con el Service Pack 3 de la 1.0., y en Ayuda->Entorno de funcionamiento de Inp aparece como
1.0 Build
3111 Revisión
0.
Ya desconfiando de todo, desinstalo la 2.0 SP1 y todo lo que puedo hasta dejar sólo .NET CF original de ROM... y el resultado es el mismo: versión 1.0 Build 3111 Revisión 0, o sea, la original. Conclusión: que Inp ignora la versión 2.0 mientras le sea válida la 1.0 que permanece y persiste en la ROM de la máquina.
Habría que instalar una de esas aplicaciones que exigen la 2.0 para ver cómo funciona y resulta todo.
Pues todo este testamento es el resultado de media tarde probando, quitando y poniendo para intentar dar forma y lógica a lo que hasta aquí eran elucubraciones. Y algo hemos aclarado, aunque todavía quedan puntos oscuros que espero que el tiempo vaya resolviendo.
Confiando en que resulte de utilidad. Un día de éstos lo podré un poco más ordenado en la
página de documentación de Inp.
Carlosinter