Ayer planteaba Quili en en ciertos comentarios que NeoDouble le había dejado de funcionar en Windows 98, que no podía cargarlo en Neobook.
Luego de no pocas pruebas (en las que me ha echado una mano el propio Quili puedo decir que he dado con el error que causaba tamaño desaguisado. Un error grave, puesto que impedía usar el plugin en absoluto.
¿Dónde estaba el problema? Pues el problema lo había traido la acción "npMostrarMensajeOSD", indirectamente. Resulta que esta acción hace uso de la función "SetLayeredWindowAttributes" del API de Win32, pero, esta función sólo está disponible a partir de Windows 2000.
Pero el problema no era del todo ese, porque, si no se usaba dicha acción, ¿cómo es que aún así no se dejaba cargar el plugin? Pues bien, porque la función estaba siendo referenciada, por decirlo así, fuera de la rutina en que se usa.
Dicha referencia se trataba de trazar en el momento de la carga del plugin (esto es algo que he aprendido nuevo, mira) y de ahí el problema, puesto que, como digo, en Windows 98, por ejemplo, no se encuentra la función susomentada en la librería "user32.dll", donde está a partir de Windows 2000.
Vale. ¿Pero entonces se arregló el problema o no? Efectivamente, el plugin puede ya cargar en Windows 98 (o eso espero, yo lo he probado en Windows ME, dentro de una máquina virtual), pero, evidentemente, no podrá usarse la acción "npMostrarMensajeOSD" desde este sistema operativo.
¿Pero por qué? Porque la acción en cuestión crea una ventana transparente en el sistema, necesita hacerlo, y sólo a partir de Windows 2000 se ofrece soporte por parte de Windows para algo así. De modo de que, aunque la acción no produzca error alguno, tampoco funcionará como se espera, repito, en Windows 9x.
¿Y no hay solución? Podría ser. Tal vez podría conseguirse crear una ventana transparente en Windows 9x sin hacer uso de "SetLayeredWindowAttributes", pero,... por lo que he buscado no parece sencillo en absoluto, y, aunque encontrara una forma, ignoro si al cabo funcionaría bien.
Así que, por el momento, voy a dejarlo aquí. He estado todo el día liado con máquinas virtuales, instalando Windows ME, tratando de instalar Windows 98, enviando pruebas a Quili y este haciendo lo propio probándolas... en fin, que ahora mismo no me apetece en absoluto continuar con esto.
Ahora bien, el problema de Quili está solucionado (o eso espero, ha de confirmarlo) y de todos aquellos que usen el plugin NeoDouble en Windows 9x. Creo (ahora mismo no recuerdo exactamente) que la acción "npMostrarMensajeOSD" es la única actualmente que sólo funcionará en Windows 2000 y superiores.