Mostrando entradas con la etiqueta Software libre. Mostrar todas las entradas
Mostrando entradas con la etiqueta Software libre. Mostrar todas las entradas

miércoles, 2 de mayo de 2012

Esto es un Pangolin
Esto es un Pangolin

Hola estimad@s lectores, como sabrán Gnoblis usa Ubuntu en la notebook desde la que escribe esta entrada, y este sábado actualizo su SO a Ubuntu 12.04 Precise Pangolin... se le están acabando los animales a Canonical.


Apenas dos días de uso no muy profundo y me ha parecido muy igual a la versión anterior, lo que es logico porque esta versión es un LTS (Long Time Support) así que debe ser estable y correr riesgos con novedades que no esten estables y probadas, además de que actualice la versión de 11.10 que ya tenia instalada en lugar de hacer una instalación limpia y me respeto muchas cosas que tenia personalizadas ya, pero lo que si note diferente fue lo siguiente.


La barra de lanzadores esta fija. La barra lateral izquierda ya no se oculta automaticamente. Al usar una pantalla pequeña me gusta que Unity buscará ahorrar espacio para maximizar el área visible de la aplicación en uso, pero ahora la barra de lanzadores se queda ahí fija por los siglos de los siglos comiéndose un pedazo de pantalla que seria más útil dárselo a la aplicación.


Relacionado con lo anterior, cambiaron un poco el Dash (la pantalla que sale cuando presionas la tecla Super, la del logo de Windows en la mayoria de los teclados de PC) agregandole mejores descripciones a los archivos y aplicaciones que salen cuando buscas en el Dash, y además agregaron las categorias usadas en el Dash a los iconos de la barra Launcher para facilitarnos encontrar lo que sea que andemos buscando, que en 11.10 era un pelín más indirecto pues habia que abrir la carpeta Home y de hay explorar o crear lanzadores a tus carpetas de más uso.


Apariencia. ¿El punto anterior le molesta a alguien además de mi? Pues en ese caso la distribución tiene aplicaciones para gestionar la apariencia y el comportamiento de nuestro escritorio. La aplicación "Apariencia" se encuentra en la "Configuración del sistema" y ha sido renovada y además de lo típico de cambiar el fondo del escritorio y cosas así de tradicionales se le ha añadido una pestaña para configurar el comportamiento de la dichosa barrita Launcher antes mencionada, que viene fijo por defecto, pudiendo ocultarlo y también seleccionar la parte de la pantalla (lateral izquierdo o esquina superior-izquierda) donde situar el cursor para que aparezca la barra.


En la versión anterior 11.10 nunca use esta opción, sospecho que pusieron adrede la barrita para obligarme a notar que trabajaron en esto, programadores hambrientos de atención.


MyUnity. ¿No es suficiente personalización para ti? Checa la aplicación en los repositorios oficiales de Ubuntu y podemos instalarla desde el Centro de Software (del que voy a hablar un poquito después) o desde la terminal (la consola aun existe) con el comando:

sudo apt-get install myunity

Además de los cambios básicos al escritorio la aplicación tiene muchas opciones para configurar Unity. Puedes personalizar muchas cosas del escritorio, la barra de lanzadores, el Dash (la pantalla de selección de aplicaciones que sale cuando presionas la tecla Super o “la que tiene el logo de Windows”), el panel (barra superior con notificaciones varias), fuentes, etc.


Gnome Shell y Gnome Tweak Tool. Ya se que a muchos no les gusta Unity, si yo usará una PC de escritorio con un monitor como Dios manda creo que tampoco lo usaría así que para los que usan el escritorio Gnome (o si quieren usarlo chequen esta guía de Gnome Shell) entonces usen Gnome Tweak Tool para más o menos lo mismo, y la encuentran en el centro de software o descargándolo con el siguiente comando:

sudo apt-get install gnome-tweak-tool

Centro de Software. La aplicación para descargar, instalar o desinstalar aplicaciones fácilmente de nuestra PC también ha sido renovada.


Ahora me recuerda mucho a la Android Store y otras tiendas digitales por el estilo.


ALT + TAB. Otra cosa que encontre diferente es que Alt + Tab no muestra todas las aplicaciones abiertas, si no solo las que se encuentran en el escritorio (workspace) en donde estas, así que eso me hace estar primero moviendome entre escritorios para saltar de aplicación en aplicación.


No encontre un modo de volver al comportamiento anterior, pero buscando he leido que en Gnome el Alt + Tab tiene algunos problemas más graves, mal por esta versión.


Conclusión. Esta versión LTS es un Ubuntu 11.10 pulido, en rendimiento, aunque no he hecho benchmarks de rendimiento a ambas versiones pero no he notado cambio ni para mejor ni para peor. Supongo que en lugar de pulir eso se esforzaron en mejorar la estabilidad de cara a futuro.


¿Alguien más lo ha probado ya?

jueves, 23 de febrero de 2012

Hola de nuevo mi estimad@s par de lector@s ¿alguno extraña entradas nuevas en este humilde rincón de Internet? Siento decepcionarlos porque mi triunfal retorno al bloggeo es una aburrida entrada de trabajo, y pues ya saben que cuando traigo cierta carga de trabajo este sitio reciente el abandono y además cuando dejo de escribir un tiempo pierdo la costumbre y es dificil retomar. Ahora a lo que vamos a contar hoy.


Estaba yo trabajando con una instalación nueva de Ubuntu 11.10 Oneiric Ocelot en una PC en una red con proxy cuando llego el momento de conectarla a internet entonces fui a buscar la opción "Network Proxy" pero no la encontre por ninguna parte. Según averigue es un fallo ya resuelto pero como la PC no tiene internet por que falta configurar el proxy pues se nos forma un Uróboros informatico aquí.


Por eso me puse a buscar como configurar el proxy y dejo este par de maneras.


Si solo te interesa navegar...


Ubuntu trae por default FireFox y muchos ya estaran acostumbrados a ajustar las opciones de este navegador pero para los que vienen de Windows tal vez los descoloque entrar y que la opción donde normalmente lo harian no esta. En FireFox para GNU-Linux se encuentra en Editar -> Preferencias, y a partir de aquí si es igual que en Windows. Seleccionar la pestaña Avanzado y entonces ya podran llegar en una pantalla como esta las opciones de su proxy.


Hecho esto ya podemos navegar por Internet lo que nos ayudará mucho para poder Googlear cualquier otra duda o configuración que requiramos.


Si quieres configurar el proxy para todo...


El hecho de no tener una ventana para configurar en modo grafico no significa que la opción no exista, recordemos que después de todo hay un Linux corriendo debajo de ese bonito ambiente grafico que nos facilita la vida así que recurrimos a la todo poderosa terminal y desde linea de comando podemos configurar el proxy de la siguiente manera. Abrir una consola y teclear (o copypastear con un poquito de edición) lo siguiente:


gsettings set org.gnome.system.proxy use-same-proxy 'true'
gsettings set org.gnome.system.proxy.http authentication-password '[tu password]'
gsettings set org.gnome.system.proxy.http authentication-user '[tu usuario]'
gsettings set org.gnome.system.proxy.http host '[la dirección IP de tu proxy]'
gsettings set org.gnome.system.proxy.http port '[el puerto de tu proxy]'
gsettings set org.gnome.system.proxy.http use-authentication 'true'
gsettings set org.gnome.system.proxy.http enabled 'true'


Usuario y contraseña suelen ser los que usas para iniciar sesión y cada linea es una instrucción independiente, no se les pase ponerle sus propios valores a la instrucción antes de ejecutarlas desde el simple copy&paste.


Si quieres configurar el proxy para todo, y en modo grafico...


¿Linea de comando en 2012? Si crees que eso es de nerds anticuados hay una alternativa. Cómo dije antes, si la opción grafica para hacer la configuración no existe... entonces pongamosla. Podemos recurir a la siguiente ayuda: dconf-editor.
Dconf-editor nos permitirá entre otras cosas poder configurar los proxys en modo grafico. Para instalarlo podemos ejecutar las siguientes lineas en una terminal:


sudo apt-get install dconf-tools
dconf-editor


Ya, ya... era broma, además si no tenemos el proxy configurado el apt-get no va a funcionar de todos modos. Ya en serio, supongo que si pudieron configurar el proxy al navegador FireFox que la distribución incluye por default si pueden navegar por Internet al menos así que entren a la siguiente página http://packages.ubuntu.com/oneiric/libs/dconf-tools y descarguen la aplicación desde ahí según la arquitectura de su computadora, ya sea AMD64 o i386 y ya que tengan el paquete .deb instalenlo con un simple doble click.


Ya instalado dconf-editor ejecutenlo y seleccionen la opción  system -> proxy y ahí indiquen el modo "manual" y "use-same-proxy". Luego en la opción system -> proxy -> http ingresen la información de configuración de su proxy.


Ahora ya debería funcionar correctamente.

lunes, 2 de mayo de 2011

Desde la semana pasada esta disponible la nueva versión de Ubuntu, la 11.04 y esta vez no me tarde tanto a actualizar y probar porque según vi esta vez hay novedades más notorias. La versión ha sido bautizada "Natty Narwall" y al llamarse narval en los foros especializados la gente suele poner el siguiente vídeo por hacer la gracia.



La canción de los narval


Ya en serio. Esta versión incluye varios cambios en la distribución y los más polémicos son cambiar el escritorio por default para usar Unity en todas sus versiones -en una entrada anterior ya les había comentado mi opinión sobre Unity- desde Notebook Remix hasta Desktop, pero para mi sorpresa la versión de Unity incluida esta vez no es tan rígida como la que había probado en 10.10 e incluye mejoras en la usabilidad que me han permitido usar Unity como mi escritorio default esta vez en lugar de huir de él nuevamente y volver a poner Notebook Remix.


Y el otro giro ha sido pasar de incluir Open Office a usar Libre Office. El cambio en la paquetería de Office es el menos traumático de los dos por aquello de la estandarización de las aplicaciones, en cambio adoptar Unity si ha levantado mucha inconformidad debido a que es un escritorio sencillo, amigable con los usuarios y de fácil asimilación para usuarios poco experimentados... por lo cual se queda corto para usuarios experimentados que gustan de personalizar su entorno y que ya traemos muchas costumbres encima, o sea, a quien no interesa empezar de nuevo con algo más simple. Se le ha llegado a comparar a Unity con que es como tener una interfaz de smartphone para que se hagan una idea.


El escritorio de GnoblisUbuntu 11.04 con Unity


De momento Unity aunque es la interfaz por default no es obligatorio y puedes escoger con cual escritorio iniciar sesión, pero se rumora que en futuras versiones no lo será así que acostumbrense o vallan buscando otra distribución que más se les acomode.


En las mejoras y correcciones respecto a detalles que critique de la versión pasada y que ahora encuentro en Unity y que le van de maravilla a las pequeñas pantallas de las notebooks esta que la barra lateral izquierda ahora se auto-oculta para ahorrar espacio. También que ahora si se pueden minimizar las ventanas y me encanta el detalle de que los menús de las aplicaciones no ocupen una linea horizontal en las ventanas si no que están ocultos hasta que pases el mouse por la barra de titulo y entonces ahí mismo aparecen. Hay muchos pequeños detalles para ahorrar espacio, por ejemplo las barras de desplazamiento en las ventanas también se ocultan y aparecen al pasar el mouse y son muy compactas.


Debido a lo anterior recomiendo Unity más para pantallas pequeñas que para escritorio. Hablando de pantallas pequeñas, aunque no es una novedad incluida ahora sino que ya viene de versiones anteriores, también me parece practico tener los botones de cerrar y minimizar a la izquierda porque en ventanas grandes que no caben en mi pantalla no tengo problemas para buscar estos botones ni recorrer ventanas a base de click y arrastre. Un detallito que he aprendido a apreciar con la practica.


UnityEl menú para buscar aplicaciones y archivos


También mejoraron que el escritorio ahora si es un escritorio donde puedo dejar mis archivos, poner accesos directos (lanzadores) y hasta funciona el click derecho... cosas que no se podían hacer en el Unity de 10.10 y en su momento critique. Además el escritorio sirve de base para un menú extra que aparece al dar click en la esquina superior izquierda y sirve para la búsqueda de archivos y aplicaciones que complementa a la barra lateral izquierda. En la barra tenemos las aplicaciones de uso más común y para acceder a las categorías que agrupan los programas y los directorios.


La función de búsqueda de archivos que se ve en Unity también me ha funcionado rápido y bien.


Otra cosa en la que he notado diferencia no es en la distribución en si misma sino en el navegador porque incluye FireFox 4 y yo no lo había probado. Lo siento bien, ligeramente más veloz pero intercambio de posición las funciones de "abrir en una nueva pestaña" y "abrir en una nueva ventana" supongo que por copiarle a Chrome y todavía no me acostumbro del todo y frecuentemente hago lo contrario a lo que quiero hacer.


En el resto de generalidades, para el uso que doy yo al SO, las aplicaciones que necesito y el grado personalización que estoy dispuesto a hacer me agrada. El rendimiento me parece bien, se mantiene el que tenia con 10.10 donde ya me había agradado la mejora del rendimiento de los videos .mp4 y .mkv ¿Algún otro usuario que quiera opinar?

domingo, 16 de mayo de 2010

Ubuntu Lucid Lynx


Buenos días mis estimad@s lector@s, como ya ustedes sabrán este blog se escribe en su mayoría desde una notebook con Ubuntu, la cual a fines de abril actualice a la nueva versión 10.04 Lucid Lynx, llevo más de medio mes usándolo y he aquí mis impresiones.


La instalación es lo mismo de siempre. La actualización desde una versión anterior vía online es algo lenta pero es algo a lo que ya estoy acostumbrado en mi PC de escritorio donde vengo haciendo eso desde el 6.10 si mal no recuerdo. En mi notebook en cambio si probé la instalación limpia y note que el paso de edición de particiones y formateo fue más veloz esta vez. Decidí hacer instalación limpia porque en realidad en la notebook nunca traigo nada muy importante por mucho tiempo ni le instalo demasiadas cosas que de pereza recuperar que un respaldo de /home no solucione, además quise separar el /root en su propia partición debido a un pequeño problema que tuve una semana antes, que el boot fallo porque decía no encontrar un archivo o algo así, en este momento no me acuerdo pero lo corregí iniciando una live sesion y dándole una pasada a la partición con el Check de GParted y con eso volvió a funcionar sin perder ni reinstalar nada aquella vez.


La instalación limpia resulto bien, te deja la computadora lista para usar en unos 25 minutos en total desde que empiezas hasta que estas en el escritorio ya libre. Sigue haciéndose con el instalador gráfico de contestar y darle siguiente que ha venido trayendo Ubuntu desde hace ya varias ediciones. Por algo a veces le dicen a Ubuntu el Windows de los Linux y cosas similares.


Cabe aclarar que aunque he probado la versión Desktop en la PC de escritorio de mi casa, esta entrada esta más enfocada en mi experiencia con la Ubuntu Notebook Remix porque la uso más y experimente más con ella.


Para esta versión cambiaron los colores insignia del sistema operativo y seleccionaron el morado. El escritorio limpio y recién instalado de UNR se ve así.


Escritorio de Ubuntu Notebook Remix 10.04


Desde la versión 9.04 he estado usando este tipo de escritorio, el cual me parece muy cómodo para la pequeña pantalla de una Notebook como la mía, y pues como verán el cambio en el escritorio de 9.10 a 10.04 fue menor que lo que se vio de 9.04 a 9.10. Esta vez el escritorio conserva la misma estructura. Hace tiempo hice una entrada sobre UNR 9.04 que pueden consultar si gustan para comparar.


Ya que estoy comparando con versiones anteriores, lo resumo así. 9.04 era rápido y ligero, con muchas buenas ideas pero algunos fallos raros como el pobre rendimiento de Flash en esa versión, aunque en realidad el pobre rendimiento de flash o algunas cosillas más raras como la literal traducción que en lugar de Red decía Rojo, el escritorio no tenia fondo y se veía algo tosco, etc... la versión 9.10 vino a asentar lo que había haciendo el default ya al sistema de archivos ext4 que ya era opcional en 9.04, mejoro la apariencia, ya una vez cargado el sistema operativo era rápido y estable pero, contrario a lo que muchos dicen, en mi notebook el 9.10 tardaba mucho en arrancar, lo atribuyo al disco duro en estado solido de mi notebook, en 9.10 también metieron a Pulseaudio... en fin, después de poco más de dos semanas de uso de 10.04 no me parece tan grande el salto pero si es una versión que carga más rápido, mantiene la estética, mejoraron algunas cosas. Después de todo esta versión es una LTS, así que debe estar hecho para durar, darle prioridad a la estabilidad sobre la innovación.


Por lo pronto la mejora que he notado que más me ha gustado ha sido el manejo y reconocimiento de monitores externos. ¿Recuerdan cuando les hable de Resapplet? Es una aplicación para cambiar la resolución del monitor fácilmente que ahora ya no necesito porque 10.04 reconoce a la primera el solo a mi monitor 23" Full HD y se pone a 1920x1080 de resolución automáticamente, cosa que con Ubuntus anteriores no había logrado en mi notebook.


Hasta ahora esos dos detalles, la velocidad del sistema, la mejora de compatibilidad con hardware externo y la inclusión en los repositorios de aplicaciones como Deborphan que antes instalaba por mi parte y ahora ahí están ahí a la mano.


Son las novedades positivas que en lo personal me han gustado y no me he encontrado con novedades negativas aun, pero bueno, el hecho de que a mi no me afecten no significa que a los demás tampoco, por ejemplo, a alguien se le ocurrió que seria buena idea que los botones de minimizar, maximizar y cerrar en las ventanas estén a la izquierda en lugar de a la derecha y claro, la humanidad, animal de costumbres, se destantea ante los cambios... pero no temáis, tiene "solución", por si alguno ve esto como un problema o un atentado contra la usabilidad.


Devolver los botones a la derecha


En consola (linea de comando) introduzcan este comando:


gconftool-2 --set /apps/metacity/general/button_layout --type string “menu:minimize,maximize,close,”


gcong-editorYa esta, con eso se arregla el estropicio y los botones se ponen a la derecha como dios manda. Hay otro método, en modo gráfico para aquellos a los que la consola los muerde y da terror. Esta manera es la siguiente:


Presionen Alt + F2 para que aparezca la ventana de ejecución rápida y en ella escriban "gcong-editor" y presionen Ejecutar. Se abrirá el editor de configuración de Gnome, y en el hay que buscar y selección "apps/metacity/general" y luego veremos una linea que dice button_layout. Le damos doble click y nos permitirá editar su valor, ponemos: "menu:minimize,maximize,close" y guardamos los cambios.


Como podrán ver ambos métodos hacen lo mismo solo que uno va al grano y el otro te lleva de la manita.


Ya que estamos metiéndonos con scripts, si quieren que la tecla windows de su teclado habrá un menú contextual con las aplicaciones instaladas que salen en la columna de la izquierda del escritorio, solo ejecuten este script en consola:


gconftool-2 --set /apps/metacity/global_keybindings/panel_main_menu --type string "Super_L"


Como siempre lo ultimo por hacer luego de la instalación es ambientar al gusto, cosas que ya me se de memoria, quito los juegos y algunas aplicaciones más que nunca uso, pongo el Audacity, algún ajuste en el uso de la memoria swap,  los codecs, tweaks  varios que no tiene caso repetir y que están repetidos en entradas anteriores y otros sitios de internet en cantidades generosas. Ahora mi escritorio se ve así, en realidad no es que halla necesitado ajustar demasiadas cosas tampoco.


Escritorio de Gnoblis


Visualmente lo único que se aprecia es que cambie el wallpaper, la sección de juegos en el menú de la izquierda ya no existe, cambie mis favoritos y detalles así, pero funcionalmente desinstale algunas aplicaciones y puse otras pocas, además de los pocos ajustes que me gustan. Y esa ha sido mi experiencia hasta ahora con Ubuntu Lucid Lynx, Cya!

--set /apps/metacity/global_keybindings/panel_main_menu --type string "Super_L"

lunes, 22 de marzo de 2010

Permisos de FlashHace tiempo que tengo problemas con las transmisiones en vivo debido a unos problemas con el flash para usar en linea la cámara y el micrófono de la notebook, pero pude lograr por fin transmitir streaming en vivo, y para hacerlo entre en esta página y le di permisos a las páginas de streaming que utilizo de esa la lista y luego reinicio el browser para ver los efectos.


La página es de Adobe mismo y ofrece varias configuraciones para Flash. Era lo que necesitaba. Bueno, al menos la versión 10 de Flash ya reconoce las webcams recientes con driver V4L2 que la versión 9 ignoraba y ya.

jueves, 14 de enero de 2010

resappletTengo un monitor nuevo, 23 pulgadas, Full HD y con un montón de entradas para diversos formatos de video para reemplazar a mi viejo pero confiable CRT de 17 pulgadas. y por otro lado, me estoy mudando en episodios y ya tengo algunas cosas en la nueva madriguera como esta nueva televisión pero aun no me llevo la PC porque no tengo internet en el departamento entre otras cosas que aun no terminan de quedar como la regadera que gotea y no pude arreglar en un primer intento (la plomeria aun no se me da de manera satisfactoria) pero si me he llevado la notebook y anoche probe a conectarla mediante VGA al monitor, y funciono parcialmente.


Si le da señal, pero se redimenciona a 640x480, aspecto 4:3 lo cual esta muy por debajo de lo que puede dar de si el monitor. Ya tengo experiencia con GNU/Linux configurando monitores en PC de escritorio pero no en el uso de monitor externo con una portatil, puede ser interesante para quien de verdad maneje mucho un portatil con monitores y proyectores diferentes de forma constante.


Configurando un monitor externo en Ubuntu


Resapplet es un applet de Gnome para cambiar la resolución de la pantalla con facilidad.


Puedes instalarlo buscando en Synaptic con las comodidades de un gestor de paquetes grafico o si te sientes más cómodo con la linea de comandos, también puedes usar el siguiente comando desde terminal:


sudo apt-get install resapplet

Una vez que lo instales puedes acceder a el desde Accesorios con el nombre de Cambiador de resolución y al abrirlo y entonces aparece un nuevo icono en el área de notificación (system tray) donde con un solo click te muestra las resoluciones disponibles para el monitor activo y te da acceso a la configuración de pantalla (Preferencias de pantalla de Gnome) por si quieres hacer otros ajustes.


Si quieres que este icono en el área de notificación sea permanente y se cargue desde que inicias sesión deberas agregarlo en Sistema > Preferencias > Aplicaciones al inicio (o Sesiones) y añadir una nueva entrada que diga resapplet en los campos Nombre y Comando, el comentario es opcional.


Si la resolución que deseas no aparece en la lista de resoluciones de esta aplicación deberas agregarla configurando tu monitor ya sea ajustando el xorg.conf, recurrir a displayconfig-gtk tal vez, instalar drivers (según que monitor o tarjeta de video puede ser necesario) u alguna otra cosa según cada caso pero esas son otras historias... para algunos tal vez historias de terror.


Yo probe este applet con mi notebook, así es como lo puse y los resultados, aunque la notebook no me da una resolución de 1920x1080 tampoco esta tan mal como al principio.

domingo, 15 de noviembre de 2009

GNU Linux


Hola amable lector ¿Has necesitado descargar un archivo grande que esta dividido en muchas partes? ¿Estos archivos son de rapidshare o megaupload?


JDownloader es una aplicación que automatiza las descargas de estos servidores. Tu le das una lista de enlaces y el programa se encarga de ir descargandolos. No se si también funcione con otros sitios similares, no he probado. Otra cosa que también me gusta es que -al menos con FireFox- explora la página que estés viendo y encuentra los links de descarga para que, si quieres bajarlo, solamente le des click al play y empieces a bajar los enlaces. También puedes indicar los enlaces manualmente.


El programa tiene métodos anti-captcha -captcha es la precaución de mostrarte una imagen y pedirte que teclees lo que hay en ella- y se va dando cuenta de cuando termina una descarga para no perder tiempo en comenzar la siguiente, así una y otra vez hasta terminar el trabajo.


Esta aplicación es software libre, con código abierto, gratuito y bajo la licencia GPL.


Esta programado en Java, así que es multiplataforma pero necesita que tengas una maquina virtual de Java instalada y funcionando en tu sistema operativo para poder utilizarlo. Para Windows existen instaladores .exe como es tradicional, pero en Linux hay varias maneras.


Ubuntu 9.10 Karmic Koala


En Ubuntu puede instalarse un paquete .deb para facilitarnos las cosas y que abra rápido la aplicación, una busqueda en google seguro que nos llevará a alguno... pero según he sabido estas instalaciones no se auto-actualizan y esta aplicación tiende a estar al día con sus "páginas objetivo" así que tomare un camino más largo pero más definitivo. Ahora veamos por instalarlo en Ubuntu 9.10


Lo primero es ver si ya tenemos Java en nuestra computadora. Java en su sitio oficial nos provee un test para saber si ya tenemos java instalado que nos será útil y allí mismo en su página tienes la descarga del instalador de Java por si es necesario... como en mi caso que tengo Java pero no la versión más reciente así que aprovecho para actualizar.



Yo descargue el paquete de instalación desde el enlace que me proporciono ese botón azul que dice "Descargar ahora" donde además de la descarga hay instrucciones detalladas para cada uno de los archivos descargables disponibles, así que no debe ser problema ni me voy a poner a explicar lo mismo en en la misma página de java ya esta aclarado.


Otra alternativa es usar el Centro de Software Ubuntu para instalar las versiones de los repositorios, que funcionaran pero tal vez no estés del todo actualizado si el repositorio no lo esta también.



Ya que estés seguro de que tienes Java en tu computadora entonces entra a la sección de descargas de la página de JDownloader y bajar el instalador para nuestro sistema operativo, en mi caso Linux.


Bajo un archivo .zip, que descomprimi en una carpeta de mi carpeta de usuario. Me genero otra carpeta que nombre JDownloader como podemos ver en esta captura de consola.



Para ejecutar el programa por primera vez uso desde aqi mismo la instrucción java -jar JDownloader.jar como puede verse también en la imagen anterior.


Se abre JDownloader y nos pide el idioma y una ruta de carpeta donde dejar los archivos que descargue de megaupload y rapidshare.



Lo siguiente es que posiblemente pida actualizarse, lo hará automagicamente.



Ya que termine de actualizar, queda lista para usarse la aplicación. Se ve así:



Habrán notado que para ejecutar la aplicación utilice una instrucción de linea de comando. Seria muy tedioso tener que hacer eso siempre ¿verdad? Entonces voy a agregar la aplicación al menú principal.


Lo que hay que hacer es abrir en las preferencias del sistema la opción Menú Principal (Sistema > Preferencias > Menú Principal) donde podremos administrar el menú.



Allí escogí el submenú de Internet y la opción de +Elemento nuevo al cual le puse la ruta del archivo .jar que antes había utilizado para ejecutarlo desde linea de comando, me quedo así java -jar /home/gnoblis/JDownloader/JDownloader/JDownloader.jar como vemos a continuación.



Ahora ya es facil ejecutarlo cuando yo quiera desde el menú principal de aplicaciones de mi sistema operativo, así.



Y ya esta... ya acabamos. Por ultimo, solo le dejo mi wallpaper por si a alguien le gusto.



miércoles, 11 de noviembre de 2009

Cruce de koalas


Buenas noches mis dos querid@s lector@s, la ultima semana ha sido de trajabo (como trabajo pero en desorden) duro en la chamba, tengo gente nueva a mi cargo y quierase que no, capacitar siempre es algo más o menos incomodo y menos o más de flojera y al llegar a casa... que flojera, a jugar wii, leer o whatever y me daba cosa ponerme a escribir... pero aquí estoy ya y la pata de mi banquito se esta doblando, changos... me voy para la cama.


Ahora, acostado sobre la cama usando la netbook para escribir la entrada, cosa que casi nunca hago pues la PC de escritorio tiene sus ventajas pero resulta que este sabado, quienes vieron en vivo el videopodcast de InGameVG sabran que tuvimos problemas tecnicos, al menos yo con los microfonos.


Lo que paso es que una ratita agarro la netbook en la semana y daño el control de audio de alguna manera y no lo note a tiempo, en casa prácticamente no uso la netbook, y pues pasa lo que pasa.


El caso es que, después de días probando al koala Karmico, Ubuntu 9.10, decidí que de plano mejor hacer una instalación limpia porque con el upgrade de 9.04 a 9.10 no quedo muy fina la netbook. Funcionaba pero tardaba más en arrancar y no menos como presumían de esta versión, había algunas cosas lentas y me estaba quedando corto de espacio en disco duro, eso si, con la comodidad de conservar mi sistema configurado como estaba ya antes.


creador de discos de inicio USB


Instalar desde la imagen no es dificil, el mismo Ubuntu 9.04 tiene una aplicación llamada creador de discos de inicio USB con lo que cree una memoria USB de arranque para instalar el sistema operativo. La Acer One da la opción de boot desde USB presionando F12 al encenderla hasta antes de que empiece a cargar una unidad.


Por cierto, la imagen de 9.10 mide menos que la de 9.04.


Instalar fue fácil y de rutina. Note que ahora da por defecto la instalación del sistema de archivos ext4, pero yo ya lo tenia desde Ubuntu 9.04 donde se podía y tenia que indicar manualmente si se quería utilizar. El ext4 hace unas comprobaciones de disco duro más rápidas y eficientes manteniendo una baja fragmentación de archivos.


Ya instalado, lo primero es configurar la red inalambrica, no hubo problema para ello más que la simple configuración manual de los datos de mi red casera. Ya conectado a internet procedo a agregar repositorios de aplicaciones útiles que no vienen por default.


La netbook no tiene tantos recursos así que requiere ajustes más finos para maximizar su rendimiento, empecemos.


centro de software Ubuntu


Antes de instalar nada nuevo aun, me puse a desinstalar las aplicaciones que no uso y se ponen por default, como los juegos incluidos en el SO. Por cierto, muy bueno el centro de software Ubuntu que ahora centraliza en un solo lugar las instalaciones de una manera más integral que el anterior añadir y quitar programas, pero extraño la opción de checkbox para escoger un montón de aplicaciones de una sola vez.

sudo wget http://www.medibuntu.org/sources.list.d/`lsb_release -cs`.list --output-document=/etc/apt/sources.list.d/medibuntu.list && sudo apt-get -q update && sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring && sudo apt-get -q update

Acabado de agregar el repositorio me doy una pasada por el Gestor de actualizaciones y también instalo las aplicaciones que uso y no vienen por default como el editor de audio Audacity. Ambientar es lo que queda.


Algunas cositas de optimización que hago es indicarle que use la memoria RAM más seguido pues por default viene configurado para recurrir a la partición de intercambio SWAP a menudo, pero swap es más lento que RAM. Entonces, modificando el archivo /etc/sysctl.conf para agregarle una linea que diga vm.swappiness=15 lo logro, ese 15 es un ejemplo, por es 60, puede verse si en consola ejectuas esto sudo cat /proc/sys/vm/swappiness y el valor indica el uso de swap. En ambientes de escritorio usando aplicaciones pequeñas no es necesario usar swap la mayor parte del tiempo y con la RAM debe bastar, especialmente en equipos con mucha RAM.


Otra cosa por hacer es quitarle el retardo a Gnome, pues por defecto espera un momentito para abrir aplicaciones. Esto se hace creando un archivo de texto que será llamado .gtkrc-2.0 y guardado en mi carpeta de usuario. El archivo contendrá la siguiente instrucción: gtk-menu-popup-delay = 0 y el efecto se sentirá en el siguiente inicio de sesión.


Por ultimo y como era objetivo primordial, hacer pruebas con el audio... salieron bien y tal vez la necesite mañana, ya veremos.


En conclusión, la instalación limpia del koala me ha dado una buena segunda impresión.

miércoles, 28 de octubre de 2009


Recordandoles que mañana sale la versión 9.10 de Ubuntu, una distribución de GNU/Linux muy popular y de las más recomendadas para usuarios novatos pero con potencial para usuarios avanzados debido a todas las caracteristicas que hereda de Debian.


Ya pueden pedir sus discos originales de este SO en https://shipit.ubuntu.com/ pues los envian sin costo a cualquier parte del mundo. En mi caso tengo instalaciones recientes en mis computadoras de escritorio y netbook así que con la simple actualización funcionaran bien, pero ya he pedido discos antes y han llegado.


Entre las novedades interesantes en esta versión yo destaco "El Centro de software de Ubuntu" que viene a centralizar en una sola aplicación todas las opciones para instalar y actualizar aplicaciones y los paquetes del sistema que estaban repartidos por el Gestor de actualizaciones, la herramienta Orígenes de software, el Instalador GDebi para paquetes individuales y el Gestor de paquetes Synaptic. Este centro aparece en lugar del Instalador de aplicaciones, pero por si acaso o por costumbre, también se mantiene como opcional al Gestor de paquetes Synaptic en el menú de administración, y hermanado a esto también se facilito la manera de agregar PPAs a las listas de origenes de software de donde tomaras las instalaciones pues tiene una herramienta grafica u opcionalmente el comando add-apt-repository y ambas formas aceptan direcciones recortadas y buscan automaticamente las claves publicas.


También renovaron el Gestor de conexiones de red, lo cual le va a venir muy bien a mi Netbook con eso de lo portatil y andarla conectando aquí y alla a donde voy, aunque ya me he acostumbrado al actual, espero que ademas de la usabilidad también mejore el control del hardware y prenda la luz del indicador de red sin tener que instalar nada aparte como fue necesario en mi Acer One con 9.04


Al parecer el soporte para audio y video ha mejorado pues cambiaron al cliente de mensajeria instantanea (el MSN pues, por llamarle de modo que cualquier simple mortal entienda aunque se lea más feo) que traia por default, Pidgin, por el Empathy. Este cliente tiene un buen soporte para audio y video estilo Skype, o eso dicen, yo no lo he probado y uso aMSN para eso. Como sea, dado lo común que se me ha vuelto ultimamente el uso de webcams y microfonos esto me da buenas expectativas.


Karmic Koala


Y hablando de microfonos, en asuntos de sonido, por fin viene la nueva versión de Control de volumen integrado con PulseAudio que no incluyeron en 9.04 aunque ya era la oficial de Gnome en ese momento.
El nuevo control de volumen permite controlar las entradas y salidas de diferentes fuentes de sonido como el micro de la Webcam o la tarjeta de sonido y permite ajustar el volumen de cada aplicación que este corriendo por separado.


En cuestiones de usabilidad, ya se puede formatear unidades desde el menú contextual del botón derecho del mouse (aquí donde los windowseros se rien XD) y llamar la herramienta de gestión de unidades de ahí mismo. Otros detallitos como la instalación de fuentes se ha facilitado, recuerdo aquel lio cuando no sabia como hacerlo y queria fuentes para editar avatares y firmas.


El sistema de archivos ahora es ext4 por defecto. Yo en mis dos PCs tengo los discos formateados en ext4 funcionando con Ubuntu 9.04 pero no era el default, tuve que modificar las particiones manualmente en la instalación o se seguia de largo con ext3. El nuevo sistema de archivos ofrece mejoras de rendimiento y se nota mucho en las comprobaciones de disco periodicas al arrancar el SO cada X veces.


Espero que el Koala Karmico trabaje bien pero me esperare un poco a actualizar a ver como fluyen las novedades en la practica y no toparme con sorpresitas como la repentina falta de drivers de mi tarjeta de video ¬¬.


Saludos.

domingo, 2 de agosto de 2009

Para los que no lo sabian, tengo una Netbook, una Acer One. Cuando la compre venia con Windows XP. En teoría este modelo también se vende con Linux y hasta deberia ser más barato así, pero por alguna extraña razón en las tiendas solo la tienen con Windows. Bueno, pues como estuve usando esa netbook en las grabaciones de InGame, habia funcionado bien y tenia pereza de moverle algo y preocupación de que si algo no quedaba bien pronto eso nos diera problemas con InGame.


Pero oh, el horror. Como a todo windows, la infecto un virus y desde entonces mi netbook ya no es la misma.


Pude quitarle los virus, pero no salio ilesa, muchos archivos ejecutables se fueron al carajo, cosas tan basicas como el notepad se dañaron para siempre. Ademas el antivirus que quedo, como todos consume recursos y una pequeña netbook el rendimiento se resiente un poco en cuanto quiero tener varias cosas abiertas a la vez y cosas como usar el MSN oficial es un infierno.


Acer One con Ubuntu


Ubuntu Netbook Remix en mi Acer One


Hoy domingo estoy con ganas de no hacer nada, no voy a salir más por comida así voy a solucionar esto de una vez por todas, GNU/Linux a la netbook. Estuve viendo en el foro oficial del fabricante y lei buenas recomendaciones de una distribución de Ubuntu ajustada a Netbooks, y en Ubuntu califican a la Acer One como una de las netbook que mejor funcionan con su sistema operativo. Bien, será el elegido.

Iniciando desde USB

Descargo la imagen para instalar Ubuntu 9.04 Netbook Remix, que es la versión de esta distribución de GNU/Linux para estas pequeñas portatiles. En la misma página tienen un instructivo de instalación en ingles y enlaces a las aplicaciones que pudieses necesitar, por ejemplo... la netbook no tiene unidad de DVD/CD así que tendre que instalar por USB. Para esto necesito poder grabar la imagen del instalador en una memoria flash y hacerlo "booteable", y como estoy en GNU/Linux en la PC de escritorio opto por utilizar usb-imagewriter u algún otro equivalente, yo digo este porque es el que en la página de Ubuntu recomiendan y esta a la mano. Quien este en windows puede hacerlo también por ejemplo con Win32DiskImager que hace lo mismo.


Me encantan las instalaciones de los hijos de Debian... sudo aptitude install usb-imagewriter y ya esta


Utilice una memoria micro SD de 4GB que tengo para grabar la imagen alli, aunque con una de 1GB hubiese sido suficiente como requerimiento minimo. El proceso fue rapido. Para que la Acer One inicie desde el puerto USB lo que hay que hacer es presionar F12 cuando enciendo la computadora y escoger desde donde "bootear".

Instalando

Antes de instalar inicio una sesión live para asegurarme por mi mismo de que el hardware esta reconocido por el sistema operativo. Todo parece funcionar: WiFi, camara, microfono, resolución de pantalla, configuración de teclado. Ok. Instalo.


La instalación es grafica e identica a las ultimas versiones de Ubuntu y te lleva de la mano preguntandote cosas. Me parece interesante que me permita instalar el sistema operativo en una tarjeta SD de 8GB que tengo en uno de los slots de la netbook como si fuera un disco duro. Este sistema necesita 2.5 GB de espacio para ser instalado, pero no. Voy a quitar el windows, si alguna vez en la vida lo vuelvo a poner tengo el disco de instalación que venia con la computadora nueva así que escojo utilizar todo el disco y adios windows. Comienza el particionado y formateado del disco duro.

Ambientar a mi gusto

Muy bien, ya esta instalado el nuevo sistema operativo, ahora toca dejarla como a mi me gusta. La primera descarga de actualizaciones de un sistema operativo recien instalado siempre es la más pesada, mientras hace ese update voy a hacer una lista de las cosas que voy a querer que tenga la netbook; el editor de audio Audacity, un reproductor multimedia y codecs, creo que VLC hará el trabajo. Me gusta el reproductor de audio Audacius. Pidgin ya viene instalado por default, no hay problema con eso, flash para el web browser... cosas así.

Conclusión

Me gustaron varias cosas, pero una no. El reproductor flash va mal, probe en varios navegadores ademas del por default FireFox y en todos hace un efecto como de frameskip que hace que de repente se salte algunos cuadros del video y no valla suave. No ver youtube en estos días ya es mala onda. En cambio, todo lo demas funciono bien, me reconocio todo el hardware, hasta una webcam marca microsoft que hasta la versión 8.10 de Ubuntu se ponia roñosa en Linux, estuve probando los usos más comunes y hasta vi por ustream a los de anime oshimai y todo muy bien excepto por eso que les comento de los videos flash.

sábado, 27 de diciembre de 2008

Buenas noches mis querid@s cinco lector@s. Me he tomado esta semana muy relax. Ya casi termina la temporada comercial que me quita tiempo y ganas de hacer más cosas y pronto regresare a la actividad normal, blog incluido.


En estos días conecte mi Wiimote a mi PC. Me he documentado un poco aquí y halla así que deseo poner en orden lo que aprendi y compartirlo con quien le pueda servir y para mi re-consulta posterior en caso necesario también.


Para empezar han de saber que el Wiimote se comunica con la consola mediante tecnología Bluetooth así que si nuestra computadora no tiene un transmisor/receptor Bluetooth integrado (en laptops no es tan raro) vamos a necesitar un transmisor/receptor Bluetooth (también conocido como dongle) externo para comunicarse con aparatos con señal Bluetooth. Hay varios modelos con conexión USB a precios razonables.

SELECCIONANDO EL ADAPTADOR BLUETOOTH ADECUADO

Atención a los drivers del dongle según el sistema operativo donde hagas esta conexión. En GNU/Linux los dongles funcionan mediante Bluez, el stack oficial para manejo de Bluetooth en linux. En cambio Windows tiene sus propios drivers genéricos para manejo de Bluetooth. Por lo regular los dongles Bluetooth que manejen drivers genericos trabajaran bien en ambos sistemas. Ademas en Windows es muy popular Blue Soleil, un programa que centraliza el manejo de dispositivos Bluetooth de forma centralizada en un único programa. Muchos dongles funcionan mediante bluesoleil y lo incluyen en lugar de drivers propios, solo que Blue Soleil no es libre y su versión linux es mucho más limitada que la de Windows así que revisa que tu transmisor/receptor Bluetooth tenga drivers para tu sistema operativo o que sea bien soportado por Bluez (GNU/Linux) o Blue Soleil según sea el caso.


transmisor/receptor Bluetooth


Mi tipico dongle con conexión por puerto USB


Los dongles que en Windows funcionan bien con el software Blue Soleil podrian no funcionar del todo en Linux, es decir. Hay muchos casos en que Bluez no los maneja completamente y vas a poder usarlos para conectar teléfonos u otros dispositivos Bluetooth comunes pero no habrá manera de que una cosa más rara como es el wiimote funcione bien. En estos casos en que tu dongle funcione bien en Windows con Blue Soleil y no termine de conectar a tu wiimote en Linux con Bluez la única opción es usar otro dongle.


Supongo que los que llevamos algún tiempo manejando diferentes sistemas operativos ya estamos prevenidos ante esos casos pero no esta demas recordar poner atención al soporte del hardware.

CONFIGURANDO LA CONEXIÓN BLUETOOTH

Esto varia dependiendo de tu sistema operativo y el dongle que tengas. En las distribuciones principales de GNU/Linux (en mi caso tengo Ubuntu 8.10) Bluez ya suele venir instalado de serie y reconocer los periféricos al ser conectados por USB para que puedan funcionar sin necesidad de nada. En caso contrario tendrás que instalarlo tu mismo de alguna manera, ya sea desde los mismos repositorios de tu distribución ya sea desde linea de comando, usando Synaptic u otro asistente similar o bajando el paquete desde la la página oficial de Bluez. En


Synaptic


Instalar Bluez en Ubuntu


Ubuntu basta con ir a "Aplicaciones -> Añadir y quitar" e instalarla así.


En Windows, a la mayoría por no decir todos los adaptadores los detectara con solo conectarlos y a partir de ahí tu sabrás si usas el asistente o tienes tus propios drivers para instalar. Tampoco debe ser problema este paso.

SINCRONIZANDO EL WIIMOTE CON LA PC

Sin importar que sistema operativo y aplicación para manejo de Bluetooth estes usando, es indispensable que sepas que para poner tu wiimote en estado de reconocimiento hay que presionar a la vez los botones 1 y 2. En ese estado los leds del mando parpadearan y el wiimote enviará señales para que la PC lo detecte y reconozca. Sin importar el método que uses para "sincronizar" el Wiimote con tu PC en algún momento tendrás que hacer ese paso.


Esto también varia. En GNU/Linux con escritorio grafico (yo uso Gnome) y usando Bluez basta con buscar el icono de Bluetooth, darle un click, seleccionar la opción para conectar dispositivos y seguir paso a paso el asistente de conexión.


En Windows, pues depende de si usas Blue Soleil, el asistente del sistema operativo u otro programa particular de la antena Bluetooth que tu posees. Blue Soleil reconoce muchos dongles y dispositivos como teléfonos, ratones inalámbricos, etc lo que lo hace muy recomendable. Este programa reconoce al wiimote y nos permite conectarlo como un ratón.


Blue Soleil


Blue Soleil en Windows XP


Para usarlo hay que abrir la aplicación y dar click en el circulo central para que la computadora empiece a buscar dispositivos; en este momento pones tu mando en modo de reconocimiento (presiona los botones 1 y 2 a la vez) para que la PC lo reconozca, entonces en la ventana de Blue Soleil aparecerá la dirección bluetooth de nuestro mando (es algo parecido a un ID). Damos doble click sobre el dispositivo y entonces será reconocido y nombrado. Dando click derecho podremos indicarle que se conecte como un dispositivo de interfaz humana y ya. Con eso la PC ya podra comunicarse con el mando.

USANDO EL WIIMOTE

Para que la computadora pueda detectar todos los movimientos del mando e interpretarlos como instrucciones útiles necesitamos aun un programa extra. Para windows existe la aplicación GlovePie, que transforma las señales de movimiento o botones presionados del wiimote y nunchuck o control clásico que tenga conectado, esto ultimo es útil también para conectar guitarras de Guitar Hero pero no todas están bien soportadas pero esa es otra historia. Decía; GlovePie ejecuta unos scripts que son una especie de programa donde se le dice al programa que hacer con cada movimiento o botón del mando indicado en el script.


No hay GlovePie para GNU/Linux, en cambio en este sistema operativo se usa la clase cwiid para que la computadora interprete las señales del Wiimote. Este incluye a Wmgui como aplicación de prueba de detección y entrada del Wiimote, Nunchuck o mando clasico.


Cwiid también se encuentra en los repositorios de Ubuntu y lo puedes encontrar en "Aplicaciones -> Añadir y quitar" e instalar desde Synaptic.


wmgui


Muestra de detección de Wiimote y nunchuck

Desde consola puedes usar estos comandos
wminput == movimiento del ratón a través de la función de puntero (necesita barra sensora)
wminput -t acc == movimiento del ratón usando los accelerómetros del wiimando (poco preciso)

En caso de que esto marque alguna excepción hay que modificar un archivo.

sudo gedit /etc/udev/rules.d/40-permissions.rules

Al final del mismo agregas esta linea: KERNEL=="uinput", MODE="0666"


Tal vez a algunos les falte aun el emulador de ratón. apt-get install mouseemu


Para realizar cosas más complejas como scripts para aplicaciones o juegos especificos entonces lo que se necesita es usar el comando wminput y modificar los archivos de /etc/cwiid/wminput/ para indicar acciones especificas a los movimientos y botones.


También se pueden manejar accesorios de wii de esta manera como nunchuck, guitarras de Guitar Hero, tablas Wii balance board... yo quiero jugar Frets on Fire con la guitarra.

jueves, 18 de diciembre de 2008

Hace un tiempo les comente de una aplicación con un ActiveX WebBrowser basado en Gecko y Mozilla. Esta aplicación esta hecha en .NET (NetFramework de Microsoft) con Windows Forms y el control principal, pues es un ActiveX. Obviamente esta aplicación es para Windows, pero por ciertas necesidades que aquí no vienen a cuento pero requieren que el explorador quede abierto después de una manipulación inicial al contenido de la página mostrada, se requirio un navegador así pero en Linux, entonces ¿Podria hacer una aplicación multiplataforma en lugar de dos especializadas? Me aventure a intentarlo. Aclaro desde ahora que aquí solo incluyo un ejemplo simple de como montar crear un explorador basico y nada más.


Empece por contemplar posibilidades para hacerlo. Hay algunas como por ejemplo WebControl con Mono 2.0 porque en esta versión se incluyo en el framework un control basado en Mozilla a modo de emular la manera en que el NetFramework de Microsoft puede manejar el motor de Internet Explorer para incluir navegación web en controles windows forms. Mono 2.0 incluye soporte para windows forms permitiendo usar aplicaciones windows como multiplataforma.


Del caso anterior no me gusto mucho el uso de Windows forms porque después de todo en mi caso particular mi prioridad es que funcione en linux me parecio mejor algo con GTK así que escogí probar a incluir un control de Gecko en una ventana GTK. Para esto use el control Gecko#. Hay un control similar llamado GtkMozEmbed que también permite incluir browsers en aplicaciones GTK pero me parecio que esta algo verde, aunque no la probe solo lei la documentación de su página y reconocen que esta limitada. No encontre como manejar el DOM, solo cargar páginas.


También existe en desarrollo un control para incluir WebKit en ventanas GTK#. WebKit también es un motor de navegadores web y es usado por Safari y puede ser incluido en las aplicaciones .NET consiguiendolo para agregarlo como referencia en la aplicación. El componente se llama webkit-sharp para quien quiera profundizar en sus posibilidades. Esta opción la encontre cuando ya tenia un poco avanzado el desarrollo y por eso no indague más pero me parece bueno mencionarla también.

AMBIENTACIÓN Y REQUERIMIENTOS

Desarrollo esta aplicación usando SharpDevelop (2.2.1), compilando con Mono 2.0 y creando el entorno grafico con GTK#; todo sobre Windows XP en español, el sistema operativo que instalaron en mi trabajo. Extraño el diseñador de ventanas Stetic que trae MonoDevelop pero ya que, si lo necesito en mi casa tengo Ubuntu con MonoDevelop y ambiente grafico Gnome que me servira para pruebas complementarias de compatibilidad y también dispongo de una computadora con la distribución slackware con el ambiente grafico KDE 3.4 donde también probare el desarrollo. Uhm, me falta un Mac... ademas no me atrae nada de nada seguirle con esto en casa, salvo la curiosidad de ver si funciona o no, cosa que no me llevará mucho tiempo.


Dando por hecho que es obvio que hay que tener instalado MONO (estoy usando el 2.0.1) y de preferencia un IDE como MonoDevelop (GNU/Linux) o Sharp Develop (Windows) para manejarlo, aunque te las podrias arreglar con un editor de texto y compilando por linea de comandos si te gusta "lo retro", te gusta presumir que programas "como los hombres" o si por alguna razón particular no hay una mejor opción en tu caso.


Para poder compilar adecuadamente con SharpDevelop y Mono en Windows XP en español tuve que hacer unos ajustes a las variables de entorno de Windows XP. Hay que crear la variable MONO_EXTERNAL_ENCODINGS para que mono trabaje perfectamente con una PC que no tenga el sistema operativo por default en ingles. si, ya se, que chafa, decia, es así:


Ah, no faltara quien no sepa donde y como poner las variables así que... Click derecho a Mi PC -> Propiedades -> Pestaña Opciones Avanzadas -> Variables de entorno. Con eso les aparecera la ventana donde poner variables de entorno para tu usuario y globales para todos. Si una misma variable existe en ambos, se le da prioridad a la del usuario sobre la global. La global solo se toma si en tu usuario no existe. Toma en cuenta esto. En mi caso declare a MONO_EXTERNAL_ENCODINGS como global.


Variables de entorno


Variables de entorno


Todavia no cierres la ventana, aun hay unas variables de entorno que necesite modificar. Primero la variable Path, donde agregue la dirección del directorio bin de mi instalación de MONO. Las otras variables de entorno que modifique son TEMP y TMP. Estas ultimas indican donde Windows pondra y buscará los archivos temporales que valla creando. En mi caso lo cambie porque en las variables de entorno de mi usuario, al estar el sistema operativo en español, me dejaba los archivos temporales en C:\Documents and Settings\adan\Configuración local\Temp. Esto es un problema por los acentos y espacios en la ruta por lo mismo de que al parecer no validaron que hay programadores fuera de los paises de habla inglesa, y que provoca un error al compilar (creo que era el CS2011) proyectos GLADE# y GTK# (por lo menos en esos me dio problema a mi, tal vez halla más) así que le di la misma dirección que existia en las variables de entorno globales.


Entonces las variables de entorno me modificadas por mi quedan así:

MONO_EXTERNAL_ENCODINGS=default_locale
Path=C:\Archivos de programa\Mono-2.0.1\bin
TEMP=%SystemRoot%\TEMP
TMP=%SystemRoot%\TEMP

Instalando Gecko#


Vamos por partes como el descuartizador, primero necesitamos el Gecko Runtime Enviroment, o GRE para los amigos. Esto nos provee de las librerias necesarias para incluir el motor de navegación de Gecko en nuestras aplicaciones. En Linux esto ya es parte de la distribución en casos que ya traen exploradores basados en Mozilla desde el principio. En Windows se necesita instalar un GRE especial porque ademas de que no esta y al parecer el oficial tiene un problema con pasarle cadenas en UTF8 a Gecko#


Yo use el instalador que se encuentra en la página de Novell, GRE-GeckoSharp-1.7.12-0.1.exe. Si todo salio bien tendran también una nueva variable de entorno que dirá GECKOSHILLA_BASEPATH=C:\Archivos de programa\Archivos comunes\gtkmozembed-win32 y también también debe estar en el Mono Global Assembly Cache. Busquen la dll en la carpeta GAC de la instalación de MONO en Archivos de programa. Esta variable de entorno es requerida en Windows para que la aplicación encuentre la libreria gtkembedmoz.dll, necesaria para usar el WebControl.


Agregando DLL al GAC de MONO


Puedes agregar la dll de Gecko# al GAC de MONO desde linea de comandos con el comando gacutil -i gecko-sharp.dll desde la carpeta donde quedo instalado originalmente. Algo así como en la imagen mostrada arriba.


Ahora si, ya podemos poner el Gecko# en nuestras aplicaciones. Cree un proyecto que usa GTK# para la creación de ventanas y agregue la referencia a la .dll de Gecko# para poder usar el Gecko.WebControl en nuestro código.


agregar referencia


Agregando referencia a Gecko# en nuestro proyecto


Ocurrio un extraño problema que lo deja a uno con cara de WTF? Resulta que a la hora de compilar la aplicación con la dll de Gecko# agregada como referencia el compilador arroja lo siguiente:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(0,0) : Advertencia MSB3247: Found conflicts between different versions of the same dependent assembly.

¿Pero que rayos? Estoy compilando con MONO ¿Por qué se mete el NetFramework aquí? Solo he instalado una vez el Gecko#, no veo porque deberia tener versiones diferentes regadas por la PC. Basta de preguntas, voy por soluciones. Voy a buscar documentación en internet un rato.


Ok. Al parecer no hay manera de usar MONO al ejecutar el debugger en SharpDevelop, solo con el NetFramework de Microsoft. Para poder usar a MONO y que el .NET de Hasecorp no me tire errores lo que he hecho es lo siguiente.


Primero seleccionar a Mono 2.0 como mi framework indicado. Para eso edito las propiedades del proyecto como se ve a continuación.


Usando el Framework de MONO


Seleccionando MONO 2.0 como mi framework a usar


Con eso usara el Gmcs (o Mcs con MONO 1.1) para correr la aplicación después de compilarla. Pero si uso las opciones de debug sigue recurriendo al de Microsoft y por eso me marca el error antes mencionado arriba. Para poder correr la aplicación con el Framework debo preparar los parametros de linea de comando de esta manera, como muestro en la imagen siguiente hay que indicar que se va a iniciar con un programa externo (MONO) así que indico la ruta donde esta en la instalación y también un par de parametros por linea de comando ${TargetPath} y ${TargetDir}


Preparando para correr con MONO


Preparando el proyecto para correrlo con MONO


Pero como mencione antes, si tratas de usar debugger entonces SharpDevelop recurre al Framework de Microsoft, el cual lanza excepciones raras, así que uso la opción Ejecutar sin depurador o Run without debugger para los que lo tengan en ingles. De este modo no pasará por el debugger y generará el ejecutable compilandolo con MONO, pero siempre que uses el debbuger NetFramework seguira marcando el mismo problema antes mencionado.


Hecho todo esto, ya estoy listo para programar.

DESARROLLO DE LA APLICACIÓN

Me puse a codificar para crear un explorador basico de prueba, muestro el código fuente a continuación. Es solo un explorador sencillo que ejecuto con MONO y enviandole la dirección URL de la página que desee abrir y nada más. En esto han venido a resumirse las horas de documentación y desarrollo en las que he trabajado ultimamente.

using Gtk;
using System;
using Gecko;
namespace GeckoBrowser
{
/// Ejemplo sencillo de explorador web basado en Gecko#
public class MainWindow : Window
{
#region Variables de la clase
/// Explorador web incluido
WebControl web;
/// Direccion de la pagina cargada en el explorador
static string UrlPagina;
#endregion
#region Punto de entrada de la aplicacion
[STAThread]
public static void Main(string[] arg)
{
Application.Init();

if (arg.Length > 0)
{
UrlPagina = arg[0]; // Obtener la pagina indicada por parametros
}

new MainWindow();
Application.Run();
}
#endregion
#region Ventana y sus eventos
public MainWindow() : base("MainWindow")
{
DeleteEvent += new DeleteEventHandler(MainWindowDeleteEvent);
#region Codigo requerido por GRE and Gecko# en Windows
string mozillaEnvPath = System.Environment.GetEnvironmentVariable("GECKOSHILLA_BASEPATH");

if (mozillaEnvPath != null && mozillaEnvPath.Length != 0)
{
Gecko.WebControl.CompPath = mozillaEnvPath;
}

#endregion

web = new WebControl(); // Inicializar el explorador
web.LoadUrl(UrlPagina); // Abrir la pagina indicada
this.Add(web); // Agregar el control a la ventana
ShowAll();
}
void MainWindowDeleteEvent(object o, DeleteEventArgs args)
{
Application.Quit();
args.RetVal = true;
}
#endregion
}
}

Para que este código funcione he agregado como referencia en mi proyecto las siguientes DLL que he usado y no estan incluidas en NetFramework. Yo las tengo por MONO y por el mismo GTK#


  • atk-sharp

  • gdk-sharp

  • gecko-sharp

  • glib-sharp

  • gtk-sharp

  • pango-sharp

Ademas de estas dll, también pongo en la carpeta junto al ejecutable a gtkembedmoz.dll debido a que cuando lo probe en GNU/Linux (un Ubuntu 8.10 con Gnome para más señas) me arrojo un mensaje diciendo que me faltaba ese archivo. Esta dll la tome de la carpeta donde se instala GTK# como explique al principio de la nota. En linux puedes tomarla de la instalación de Mozilla o FireFox que seguramente estará en /usr/lib/[carpeta de tu navegador] por lo regular.


Navegador


Así se ve el navegador


La aplicación me funciono bien excepto en un caso, cuando la ejecute para abrir una página segura me solicito la instalación del Personal Security Manager (PSM) como requisito para mostrar las páginas HTTPS, con las demas sin problema. Esto es cosa del navegador, Gecko en este caso. Este paquete consiste en un set de librerias para operaciones Cryptograficas, incluida SSL por lo que es necesaria para visualizar "páginas seguras" (https) y manejo de certificados. Al parecer los navegadores como Mozilla FireFox incluyen este componente pero lo hacen en si mismos, en una capa por encima de Gecko así que por eso no lo estoy usando de manera predeterminada.


En GNU/linux me dio una excepción debida a falta de ambientación. El mensaje es este:

Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for Gecko.WebControl --->
System.DllNotFoundException: gtkembedmoz.dll
at (wrapper managed-to-native) Gecko.WebControl:gtk_moz_embed_get_type ()
at Gecko.WebControl.get_GType () [0x00000]
at GtkSharp.GeckoSharp.ObjectManager.Initialize () [0x00000]
at Gecko.WebControl..cctor () [0x00000] --- End of inner exception stack trace ---
at GeckoBrowser.MainWindow..ctor () [0x00000]
at GeckoBrowser.MainWindow.Main (System.String[] arg) [0x00000]

Entonces abri el archivo

/etc/environment para agregar la variable LD_LIBRARY_PATH="[inserte aquí la ruta de los .so de mozilla, firefox o donde sea que este]" y ya con eso funciona.


Explorador solicitando Personal Security Manager


Otro problema que puede llegar a darse y que aun no he resuelto es cuando el navegador trabaja tras un firewall y necesites darle una IP particular al browser como salida a Internet. Aun no se como indicarselo.


Estos casos aun no los resuelvo, así como tampoco he implementado control de los eventos del navegador y del DOM de las páginas deplegadas en él, pero esos puntos me interesa trabajarlos también aunque este ultimo no estoy seguro que tan profundamente se pueda manejar con Gecko# o si será mejor cambiar de enfoque. En cualquier caso practicar el uso de GTK# me cayo bien para refrescar memoria pues hace tiempo no lo usaba más que en GNU/Linux con el diseñador de ventanas STETIC de MonoDevelop.

Acepto sugerencias de mejora y resolución de lo que falta.

sábado, 13 de diciembre de 2008

Hola de nuevo mis querid@s lector@s, como les dije ayer continuo con el tema. Quiero el Guitar Hero World Tour para mi hermana (la secuestradora de gatos) y para mi. Actualmente es dificil por no decir imposible conseguirlo en tiendas de Culiacán porque a donde llega se agota, solo quedan versiones de solo Guitarra para Xbox360 en Game 4 Less pero yo quiero el completo, y me parece un juego muy caro para animarme a la ligera a recurrir a comprarlo en linea, ademas no tengo una prisa loca y contra reloj pues yo no creo que Jesús halla nacido el 25 de diciembre o demas tradición catolico navideña, pero tengo aguinaldo y es una epoca donde se antoja comprar cosas y eso es innegable... retomo el tema, entonces mientras lo tengo decidi jugar Frets on Fire en mi PC para ir practicando porque nunca he tenido un Guitar Hero o Rock Band, y de hecho es la bateria lo que más me motivo esta vez.


Frets on fire logo


Monigote demostrativo


Frets on Fire es un juego que surgio por ahí después del Guitar Hero y se basa en la misma mecanica, un poco más simple tal vez. Es como jugar Guitar Hero con el teclado en lugar de guitarra, las notas (también cinco) se marcan con los botones F1 a F5 y el pulsador es la tecla ENTER. En caso de que tu teclado no soporte la presión simultanea de algunas teclas se puede configurar para jugarlo con otras teclas, lo cual también aplica para adecuarlo si eres zurdo. Graficamente es muy sencillo pero se le pueden aplicar MODS para mejorar y cambiar su apariencia, algunos lo hacen verse como un Guitar Hero o Rock Band pero también hay MODS originales con apariencias personalizadas. Yo lo he dejado tal cual porque me va bien así.


Respecto a ajustes, también puede ser jugado con guitarras de los juegos de consola, por ejemplo conectando una guitarra por puerto paralelo con uno de esos adaptadores caseros y los drivers para PAD. Yo hice un cable para usar un PAD de PS2 a mi PC por el puerto paralelo hace tiempo y algunos juegos y emuladores lo reconocen directo y también lo puedo hacer que los botones emulen teclas comunes para los juegos que no soportan joystic o casos dificiles de configurar. También hay adaptadores de PAD por USB que son más practicos aun y también puede usarse la guitarra de Wii por Bluetooth... como se me antoja probar esto ultimo cuando tenga el Guitar Hero para mi Wii en parte por jugar y en parte por pura curiosidad cacharrera.


Captura de Frets on fire


Así se ve el juego sin MODS


Pues resulta que en mi PC no hiba del todo bien. En Ubuntu Hardy no arrancaba y en Intrepid Ibex si lo hacia pero con algunos bug como que me desconfiguraba la resolución cuando lo cerraba y volvia al escritorio después de jugar en pantalla completa. Todo el problema venia de los drivers de video y por eso en la semana estuve actualizando, configurando y eso. Ahora ya deje los drivers propietarios bien y el Frets on fire, compiz y video con aceleración por Hardware va como la seda.


Lo unico que si personalice del juego en mi PC fue la lista de canciones. Recien instalado solo tenia cuatro canciones desconocidas, pero al ser un software libre para PC con la libertad que eso implica los usuarios podemos hacer nuestras propias canciones para el juego y hay páginas y foros dedicados a este juego donde recopilan canciones para el juego. Busque un rato e instale en mi juego canciones de Sonata Arctica, Metallica, Stratovarius, Nightwish, Evanescence, Linkin Park, Yngie Malmstein, The Black Mages Rhapsody of fire y Gorillaz, por lo pronto unas veinte canciones pero con el tiempo seran más. El punto fuerte de este juego es esa personalización. Puedes buscar canciones ya preparadas para el juego o crear las tuyas propias, cualquier canción. Un setlist limitado solo por tu voluntad de buscar/crear las canciones para el juego y la capacidad de tu disco duro. Es como comprar un sandwich en Subway, si no te gusta como quedo es tu culpa porque tu escoges que le ponen. De hecho el juego tambié trae la opción de importar las canciones de Guitar Hero directamente si tienes el disco.


Instalando Frets on fire en Ubuntu


Instalar Frets on fire es muy facil


El juego esta disponible para Linux, Windows y Mac y puede descargarse desde la página oficial del mismo o desde algún repositorio como es el caso de Ubuntu que lo tiene en sus repositorios de aplicaciones a solo una vista a Añadir o quitar programas como muestra la imagen anterior. Solo lo buscas en la lista de aplicaciones e instalas.


Si te gustan este tipo de juegos pero no tienes consola, te parecen caros o no te gustan las canciones que incluyen aquí tienes una opción muy viable.

martes, 9 de diciembre de 2008

Ubuntu 8.10 Intrepid Ibex


Buenas noches. Como sabran, yo tengo GNU/Linux como sistema operativo en mi PC, Ubuntu para ser más exactos. Pues bien, tenia desde abril la versión 8.04 LTS también conocida como Hardy. El pasado octubre salio la Intrepid Ibex y yo no habia actualizado, después de todo tenia una versión LTS que se sigue actualizando.


La semana pasada le instale la nueva versión 8.10 a la PC de mi primo y me gusto. Decidi actualizar la mia y lo hice mendiante el update manager. Tardo un rato pero todo salio bien... aparentemente. Ya trasteando a fondo el rendimiento de la tarjeta de video bajo porque me cambio drivers al actualizar.


Decidi instalar los drivers propietarios de nuevo. Es una ATI Radeon 9550. Cuando tenia Ubuntu 7.10 tenia los drivers propietarios y mi compiz funcionaba perfecto. Hay unos videos de mi escritorio en Youtube que lo atestiguan. Luego con la 8.04 la actualización me quito el driver propietario y me dejo uno libre que funcionaba bien y lo deje. Llego la 8.10 y bajo el rendimiento. Puse el propietario y al sistema le dio por arrojar por default una resolución muy alta que mi monitor no soporta y no muestra correctamente.


Eso ya me habia pasado con la 7.10 cuando puse los propietarios nada que dpkg-reconfigure xserver-xorg desde linea de comandos para escoger la resolución y luego reiniciar las X no arreglase... pero desde la versión 8.04 eso ya no funciona como antes y se detiene en la configuración del teclado sin dejarme configurar el video... y para colmo cambiaron el archivo de configuración xorg.conf así que editarlo a mano tampoco me funciono.


En fin, esta vez no tuve mucho animo de experimentar y lo que hice fue reinstalar la versión 8.04, desde el CD, gracias a que tengo el HOME en una partición separada no perdi la configuración de los usuarios. Luego de eso empece sesión desde el disco LIVE de la versión 7.10, repare el xorg.conf copiando el de la 7.10 y editandolo y por ultimo iniciando una sesión en linea de comandos para poder ejecutar el monitor resolution settings con el comando gksu displayconfig-gtk y escoger una resolución baja a 60Hz y poder iniciar mi sesión en modo grafico.


Salio bien y ya pude entrar a mi sesión. No perdi ninguna configuración de mi usuario. Instale el driver propietario de todos modos pero el 8.04 si lo he podido configurar bien no como el 8.10. Curioso, como instale el 8.04 encima del 8.10 sin formatear la partición, mi 8.04 tiene el uplash (pantalla de inicio de sesion) y la barra superior del Intrepid Ibex, aunque esta ultima solo conservo la apariencia y se porta como la del Hardy. Por lo pronto le di actualizar con el update manager y me marco una actualización completa de la distribución. Me va a poner paquetes del Intrepid, a ver como termina mi S.O.


Bueno, nos vemos. Me voy a usar mi ubuntu y si pasa algo interesante aquí lo publico.

martes, 4 de noviembre de 2008

FireFox


Mozilla FireFox


Ya encontre como poder obtener el código fuente de la página cargada en el explorador (Mozilla) montado en nuestra aplicación y como poder sobreescribirlo por otro modificado a nuestro gusto.

// Obtener el contenido de la página cargada en el explorador
mshtml.IHTMLDocument2 pagina = (mshtml.IHTMLDocument2)WebBrowser.Document;
// Obtener su código fuente
string codigoFuente = pagina.body.outerHTML;
///
/// TODO: Modifica el código fuente a tu gusto y necesidad
///
// Sobreescribir el codigo fuente original con nuestro código
doc.body.innerHTML = nuevoCodigoFuente;

La clave esta en usar el objeto de tipo mshtml.IHTMLDocument2. Tuve que volver a agregar la referencia a mshtml.dll porque en las de Mozilla nada más no encontre el objeto IHTMLDocument2, sospecho que no existe equivalente aun o por lo menos no se como se llama. Para agregarla solo puse la referencia como si fuera a hacer un proyecto con el ActiveX de IExplorer. De ahí en fuera, el de Mozilla hace lo demas y entiende los resultados dados por la manipulación de este objeto.


Modifique la aplicación que publique anoche para agregar esta funcionalidad y hacer pruebas. Para usarla hay que enviar como parametros por linea de comando la dirección de la página, el pedazo de código que se desea remplazar y luego el texto que remplazará al parametro anterior.

El código fuente
El ejecutable de prueba

Bueno, y eso es lo que hice con el Mozilla.

lunes, 3 de noviembre de 2008

Buenas noches mis cinco lectores. Disculparan ustedes que los aburra de nuevo con una entrada de programación. Hagan una flamewar de comentarios fanboys si se aburren.


Resulta que como ya comente antes cree un explorador web personalizado para automatizar unos procesos de unas páginas web que son repetitivos y muy comunes para que me paguen a mi en lugar de a un mono que haga esos rutinarios trabajos. Para hacer esto, inclui en mi aplicación un control ActiveX WebBrowser para manejar el nucleo de Internet Explorer (en este caso el la versión 6) dentro de un formulario, y más importante poder manipular los eventos del explorador (especialmente importante para mi caso es el evento DocumentComplete) y manipular el DOM de las páginas cargadas en mi aplicación para controlar los procesos y manipular su contenido a mi conveniencia. Era lo que estaba a la mano en lugar de construir algo más sofisticado con APIs y a más bajo nivel como uno similar que tenemos en C++ pero es más complejo de entender y dificil de adaptar a casos rebuscados.


El pero esta en que resulta que IExplorer realiza muchas conexiones para abrir la página y el servidor web lo reciente y si la cantidad de trabajo es muy masiva las salidas se saturan. En cambio FireFox para hacer lo mismo solo necesita menos de una cuarta parte del total de conexiones. ¿Qué hace IE con tantas conexiones? ¿Le envia reportes a Redmond de lo que hacemos? No se, pero para 1'000 procesos el IE realiza 30'000 conexiones o más al servidor web mientras que FireFox apenas no anda sobre las 5'200 o menos para las mismas tareas.


¿Es posible usar a FireFox dentro de la aplicación?


Pues si, encontre una manera muy sencilla de hacerlo recurriendo a un ActiveX preparado para cumplir la función del ActiveX de IE ya existente. Lo he probado y en lo general funciona. Advierto de una vez que no es un substituto 1:1 totalmente funcional. Hay diferencias como las hay entre IE y FireFox, ademas de que se nota que le falta trabajo en las cosas más dificiles de implementar. Es decir, para navegación esta bien, pero por lo pronto para manipulación del DOM no he obtenido resultados ya sea por mi desconocimiento de equivalencias o porque estos metodos no estan desarrollados aun o tal vez nunca. Debido a estos inconvenientes es que la investigación continua, pero por lo pronto ya tengo algo interesante. Un WebBrowser personalizado usando el motor de Mozilla, lo cual me parece interesante a mi porque combinando el motor de Mozilla en lugar de IE, usando MONO en lugar de NetFramework y GTK# en lugar de Windows forms podria desarrollar las versiones futuras de modo que sean multiplataforma por lo menos para curiosidad mia. Ademas, entre SharpDevelop que estoy usando ultimamente y MonoDevelop no hay muchas diferencias porque son, como la versión multiplataforma de un IDE común.


FireFox, GTK, MONO


¿Combinación adecuada?


Ahora a lo que te truje. El ActiveX para manejar el motor de Mozilla lo encontre en esta página, desde donde pueden descargar la instalación, que no es otra cosa que la parte indispensable de Gecko (el motor de renderizado) y un registrador de .dll para que puedas usarlas desde los IDE de programación como un control más. Yo estoy usando la versión "Mozilla ActiveX Control 1.7.12" en combinación con FireFox 3. Para integrarlas a Visual estudio solo tuve que agregar una herramienta más en la pestaña de componentes de la caja de herramientas, buscar la .dll entre los componentes COM (previamente he corrido el instalador, claro) y ¡Voila! Ya tengo el control en mi toolbox para agregarlo solo con click y arrastre como cualquier caja de texto. También se pueden integrar a otros IDE para otros lenguajes no .NET y en la página arriba referenciada hay instrucciones para Visual Studio, C++ por código, Delphi y Visual Basic 6.


Si optas por construir desde cero, solo hay que manejar el control y sus eventos como a cualquier otro control de Visual Studio, y es identico en casi todo al de Microsoft incluido en mshtml.dll, hasta se agregan igual a la barra de herramientas, y por eso en aplicaciones existentes basta con borrar los controles de IE, poner en su lugar uno nuevo de FireFox y ponerle el mismo nombre que el anterior, aunque en este caso necesite regenerar los eventos manualmente; y claro. También las referencias a los espacios de nombres AxMOZILLACONTROLLib y MOZILLACONTROLLib


El manejo de este ActiveX es muy similar al de IExplorer, por ejemplo. La declaración del control:

// Declarar el control ActiveXWebBrowser para IExplorer
AxSHDocVw.AxWebBrowser browser = new AxSHDocVw.AxWebBrowser()
// Declarar el control ActiveXWebBrowser para Mozilla
AxMOZILLACONTROLLib.AxMozillaBrowser browser = new AxMOZILLACONTROLLib.AxMozillaBrowser()

Lo unico que cambia es el nombre del objeto y la .dll referenciada. Pero que eso no te engañe, aunque a primera vista y aunque el debuger no te arroje errores, en el evento .Navigate hay un detalle.

// Abrir la página de NGA
browser.Navigate("http://gamersla.net/", ref objeto, ref objeto, ref objeto, ref objeto);

En este caso, para IE dos de ellos son tipo object con valor cero y dos son cadenas de caracteres (string) vacias. En cambio, al tratar de usarlo así para Mozilla, solo obtenia ventanas en blanco. Para que el FireFox funcionara tuve que enviar cuatro null de tipo object y entonces si trabajo bien.


ActiveX Mozilla Firefox


Aplicación que utiliza el ActiveX para usar a Mozilla


Construi para hacer pruebas una aplicación sencilla, no es más que una ventana WindowsForm con el control ActiveX para usar a Mozilla donde se abre una página dada como parametro por linea de comando. Les comparto:

El código fuente
El ejecutable de prueba

Ya puedo abrir las páginas, ahora lo que toca es tratar de controlar el DOM y poder hacer cambios y autosubmit en la página controlando los eventos del browser.

Subscribe to RSS Feed Follow me on Twitter!