Depurando un crash de explorer.exe en Windows 8.1

Hace unos días mi explorador de Windows 8.1 empezó a fallar, teniendo cuelgues cada cierto tiempo que me llegaban a bloquear una buena parte del sistema, y que concluían con un reinicio automático del explorador. Lo curioso es que no era posible reproducirlo, así que, para intentar averiguar qué pasaba, me he armado de valor y me he propuesto depurarlo.

En este artículo veremos los diferentes pasos que he ido dando.

1. Generar un dump:

Para poder depurar primero tenemos, o bien que adjuntar un depurador a la aplicación y esperar a que falle, o bien generar un volcado de la memoria (dump) en el momento del fallo. Como explorer no lo realiza de manera automática, hemos de agregar al registro de windows la siguiente clave:

https://onedrive.live.com/?cid=128FC518635BE2DC&id=128FC518635BE2DC%21346

De esta manera, cuando ocurra el crash, no podremos evitarlo (en principio) pero sabremos donde mirar.

Cuando terminemos de recopilar logs, podemos restaurar el estado anterios, empleando una clave de registro similar:

https://onedrive.live.com/?cid=128FC518635BE2DC&id=128FC518635BE2DC%21672

2. Instalar el SDK de Windows:

El SDK de Windows (8.1 en mi caso) incluye los depuradores para 32 y 64 bits, y se instala por defecto en C:\Program Files (x86)\Windows Kits\Debuggers\x64 El depurador que usaremos es WinDbg.

Para descargar el sdk deberemos ir a http://msdn.microsoft.com/en-us/windows/hardware/hh852365

3. Cargamos el dump anteriormente generado

Si hemos tenido suerte y desde que lo instalamos hemos sufrido algún crash, podemos entonces analizarlo. Para ello vamos a la ruta anterior, ejecutamos WinDbg, vamos a “File > “Open Crash Dump” y seleccionamos nuestro fichero de dump (Que estará situado en la carpeta

explorer crash

4. Inicializar los servidores de símbolos

Abrimos “Symbol File Path…”

SRV*C:\WebSymbols*http://msdl.microsoft.com/download/symbols

Recargamos la lista de símbolos de nuestro dump usando el siguiente comando.

.reload

5. Iniciar análisis

Una vez que la lista de símbolos está cargada, solamente nos queda iniciar el análisis

!analyze -v

Una vez terminado el análisis (que va a tardar bastante) tendremos un resultado como este:


*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************

*** ERROR: Symbol file could not be found.  Defaulted to export symbols for sppc.dll - 

FAULTING_IP: 
comsvcs!CNewMonikerClassObject::ParseDisplayName+0
00007ff8`5ba62cf4 ??              ???

EXCEPTION_RECORD:  ffffffffffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 00007ff878c01759 (ntdll!RtlVirtualUnwind+0x0000000000000091)
   ExceptionCode: c0000006 (In-page I/O error)
  ExceptionFlags: 00000000
NumberParameters: 3
   Parameter[0]: 0000000000000000
   Parameter[1]: 00007ff85ba62cf4
   Parameter[2]: 00000000c0000185
Inpage operation failed at 00007ff85ba62cf4, due to I/O error 00000000c0000185

CONTEXT:  0000000000000000 -- (.cxr 0x0;r)
rax=000000001282de78 rbx=00000000127b1570 rcx=0000000000000001
rdx=00007ff85b960000 rsi=0000000000000000 rdi=00007ff85ba62cf4
rip=00007ff878c01759 rsp=00000000127b1410 rbp=00007ff85ba91b5c
 r8=00007ff85ba62cf4  r9=00007ff85babab2c r10=0000000000000b99
r11=00007ff85b960000 r12=0000000000000000 r13=00000000127b14e8
r14=00007ff85babab2c r15=0000000000000001
iopl=0         nv up ei ng nz ac po cy
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010297
ntdll!RtlVirtualUnwind+0x91:
00007ff8`78c01759 803f48          cmp     byte ptr [rdi],48h ds:00007ff8`5ba62cf4=??

DEFAULT_BUCKET_ID:  WRONG_SYMBOLS

PROCESS_NAME:  explorer.exe

ERROR_CODE: (NTSTATUS) 0xc0000006 - The instruction at 0x%p referenced memory at 0x%p. The required data was not placed into memory because of an I/O error status of 0x%x.

EXCEPTION_CODE: (NTSTATUS) 0xc0000006 - The instruction at 0x%p referenced memory at 0x%p. The required data was not placed into memory because of an I/O error status of 0x%x.

EXCEPTION_PARAMETER1:  0000000000000000

EXCEPTION_PARAMETER2:  00007ff85ba62cf4

EXCEPTION_PARAMETER3:  00000000c0000185

IO_ERROR: (NTSTATUS) 0xc0000185 - The I/O device reported an I/O error.

EXCEPTION_STR:  0xc0000006_c0000185

ADDITIONAL_DEBUG_TEXT:  Followup set based on attribute [Is_ChosenCrashFollowupThread] from Frame:[0] on thread:[PSEUDO_THREAD]

LAST_CONTROL_TRANSFER:  from 0000000000000000 to 0000000000000000

NTGLOBALFLAG:  0

APPLICATION_VERIFIER_FLAGS:  0

APP:  explorer.exe

ANALYSIS_VERSION: 6.3.9600.16384 (debuggers(dbg).130821-1623) amd64fre

MANAGED_STACK: !dumpstack -EE
OS Thread Id: 0x3eb4 (22)
Current frame: 
Child-SP         RetAddr          Caller, Callee

PRIMARY_PROBLEM_CLASS:  WRONG_SYMBOLS

BUGCHECK_STR:  APPLICATION_FAULT_WRONG_SYMBOLS

STACK_TEXT:  
00000000`00000000 00000000`00000000 hardware_disk!Unknown+0x0


STACK_COMMAND:  .ecxr ; kb ; ** Pseudo Context ** ; kb

SYMBOL_STACK_INDEX:  0

SYMBOL_NAME:  hardware_disk!Unknown

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: hardware_disk

DEBUG_FLR_IMAGE_TIMESTAMP:  0

FAILURE_BUCKET_ID:  WRONG_SYMBOLS_c0000006_hardware_disk!Unknown

BUCKET_ID:  APPLICATION_FAULT_WRONG_SYMBOLS_hardware_disk!Unknown

IMAGE_NAME:  hardware_disk

ANALYSIS_SOURCE:  UM

FAILURE_ID_HASH_STRING:  um:wrong_symbols_c0000006_hardware_disk!unknown

FAILURE_ID_HASH:  {95c4d6f5-b6a7-b83a-dfd6-d872fc207cf6}

Followup: MachineOwner
---------

Tras echar un vistazo al crash, y consultar por los rincones de Internet, parece ser que la clave está aquí: IO_ERROR: (NTSTATUS) 0xc0000185 – The I/O device reported an I/O error. Es decir, tengo algún tipo de error de disco. Tocará seguir investigando con otras herramientas. Aunque no he podido conseguir mi objetivo final (reducir o eliminar los fallos) usando windbg, he podido hacer un pequeño diagnóstico gracias a windbg.

Dejo abierta al lector la siguiente pregunta, qué tipo de problemas has podido resolver usando windbg o similar?

Sigue la conversación en Reddit

Materiales del evento: Christmas Windows Phone Sessions, de Windows Phone 7 a Windows Phone 8

El pasado día 3 dentro de las Christmas Windows Phone Sessions tuve la oportunidad de hablar de migración de aplicaciones a Windows Phone 8 desde la perspectiva de un desarrollador Windows Phone 7. Durante una hora estuvimos viendo temas como:

  • Emuladores
  • Resolución
  • Memoria
  • Modos de ejecución asíncrono
  • Portable Class Libraries

Slides

Demos / Ejemplos de código

https://app.box.com/s/un18dtbaiuuy1whaiqcc

Acceso al evento en diferido

https://msevents.microsoft.com/CUI/EventDetail.aspx?culture=es-ES&EventID=1032572357&CountryCode=ES

Finalmente en este artículo resumo algunos puntos interesantes de la charla, en 5 puntos a tener en cuenta al migrar aplicaciones.

MS Blogger Haus: Impresiones

Con el programa Microsoft Blogger Haus terminado, toca recapitular todo lo visto y aprendido durante estos días en el Consumer Electronics Show de Las Vegas.

Introducción

Microsoft EMEA decidió invitar, para esta última edición en la que Microsoft estará presente en el CES, a varios bloggers de diferentes países de europa (Alemania, Austria, España, Italia, Portugal y Rusia) y de EEUU para que pudieran realizar una cobertura del mismo y a su vez tener contacto con personal de Microsoft que pudiese resolver dudas sobre el presente y futuro de la empresa.

Día 1: Presentaciones y Keynote

El programa comenzó al recibir el material que usaríamos para cubrir el evento. Tras las presentaciones iniciales estuvimos durante un rato hablando con miembros de las divisiones de hardware, phone y Windows que nos estuvieron contando algunos trucos sobre los dispositivos que ibamos a usar esos días:

  • Sony VAIO Y Series: Un portátil económico, de gama baja y considerablemente ligero con una pantalla de 11′ y una batería bastante decente, para poder redactar los post con calma.
  • HTC Titan: Un móvil Windows Phone 7.5 (Mango) con acceso a redes 4G (Como lo oyes, en EEUU ya van por la 4…). La posibilidad de tener un móvil con conexión a internet ha sido decisiva, ya que el CES no cuenta con Wifi pública para los asistentes, con lo cual habríamos estado prácticamente incomunicados ahí dentro.
  • Microsoft Arc Touch: La evolución del clásico Arc mouse, ahora cuenta con una superficie táctil y una superficie que se curva, bastante cómoda al uso. Cuando no se usa se puede guardar en un bolsillo fácilmente.

Tras las presentaciones, la keynote inaugural con Steve Ballmer, que resumí en el post anterior y una cena de bienvenida.

Día 2: Charlas temáticas

El segundo día estuvo destinado casi en su totalidad al encuentro con varios profesionales de Microsoft con los que estuvimos revisando diferentes áreas de producto, desde Windows Live hasta Microsoft Hardware, pasando por Xbox y Kinect.

Xbox

En este encuentro se resumieron algunas características comentadas en la Keynote sobre la integración de experiencias en la Xbox como es el caso de ESPN en EEUU, así como del trabajo que se está realizando con partners para poder ofrecer servicios de televisión y otras apps en el resto del mundo.

También se habló de la integración de Windows Phone con la Xbox, que de momento se emplea para control remoto y se comentó que era previsible la llegada de nuevos títulos que aprovecharan las características de integración entre ambas plataformas, así como la posibilidad de continuar el juego desde el dispositivo móvil.

Cut the Rope

El famoso juego de iPhone, iPad y Android se ha mostrado como ejemplo de aplicación desarrollada para Windows 8, y se ha mostrado como una aplicación realizada íntegramente en HTML5 que se puede usar ahora desde cualquier navegador moderno.

En la web de Zeptolab, los creadores del juego han colgado, además, un apartado llamado Behind the scenes en el que cuentan cómo hicieron el desarrollo del juego, llegando a liberar el código del menú de precarga que usan.

Más información en http://cuttherope.ie

Dispositivos actuales

El siguiente paso fue hacer un recorrido por los diferentes modelos de PC que se estaban presentando, en los que había una completa gama desde Ultrabooks, portátiles tradicionales, All-in-one y pantallas táctiles enormes. Las líneas que se presentaron de manera general eran bastante estilizadas, lo que demuestra que los fabricantes se están alejando del modelo de pc cuadrado y tradicional y pasando a usar diseños más personales.

Microsoft Hardware

La otra parte del evento, tras la comida, estuvo marcada por una charla con Ben Reed, de Microsoft Hardware, donde estuvimos hablando del hardware que hace Microsoft: Teclados, ratones, webcams y auriculares, como 4 líneas de negocio fundamentales. Esta división, que en 2012 cumple 30 años, mostró además nuevos modelos del Arc Touch, en conmemoración con el año nuevo chino. Hablamos además de usabilidad, de estudios desarrollados y de cómo influye la ergonomía en los accesorios fabricados.

Fin del programa con Windows 8 como plato estrella

El último día estuvo marcado por dos charlas destacadas: Windows 8 y Microsoft Next, además de un vistazo por la sección de servicios.

Windows 8. Se avecina algo grande

Pese a que no pudimos interactuar con la unidad expuesta, se apreció una suavidad en los movimientos, así como una diferencia de rendimiento considerable respecto a la versión developer preview, teniendo en cuenta que tuvimos dos terminales exactamente iguales ejecutando diferentes versiones del sistema operativo.

Hablamos de la tienda online (Microsoft Store), donde nos comentaron que además de aplicaciones Metro habrá compatibilidad con las aplicaciones tradicionales de Windows, donde los desarrolladores podrán usar la tienda para mostrar software ya existente. Además hablamos de los modelos de comercialización, en los que tendremos aplicaciones de pago, gratuitas y trials, que puedens ser o bien por tiempo, funcionalidad, etc. Esta limitación estará impuesta por el desarrollador y no por Microsoft.

Se nos mostraron además nuevos gestos para la interacción así como la característica Semantic Zoom, que permite agrupar nuestras apps en grupos y tener una vista general de todos ellos.

Finalmente, se nos confirmó que la siguiente versión será la Beta, saldrá a finales de febrero y contendrá mejoras significantes en cuanto a rendimiento, así que no nos decepcionaremos.

Servicios: Hotmail, Skydrive y Skype

En la sección servicios pudimos ver las mejoras en el gestor de e-mail de Windows Live, que mejora la gestión de listas de correo así como la introducción de carpetas para la gestión inteligente del correo.

Por otra parte pudimos hablar con un representante de Skype, que nos habló de la integración con Facebook, nos dio algunas cifras de usuarios (200.000 de usuarios activos cada mes), así como nos comentó que pese a la adquisición de la empresa por Microsoft, el desarrollo multiplataforma seguía siendo una prioridad.

Respecto a Skydrive, pudimos tener una charla un poco más tranquila con Harrison Hoffman, Product Manager de Skydrive, en la que estuvimos hablando de diferencias con Drobox o servicios como Google Docs, y las posibilidades futuras de la plataforma como la integración con Windows 8 o la posible fusión de Mesh con Skydrive para lograr una sincronización mediante una aplicación de escritorio.

Next: Kinect y Surface

El último apartado que tuvo el evento se llamó What’s Next, donde pudimos ver un ejemplo en funcionamiento de Kinect for Windows, un uso diferente por parte de los chicos Microsoft Research llamado Kinect Fusion.

Por otra parte pudimos ver la Surface 2.0, basada en la tecnología PixelSense, que permite detectar los elementos que se encuentran encima de la pantalla sin que sea necesario que estén físicamente sobre ella, ya que aunque no lo parezca la tecnología sigue usando cámaras.

Conclusión y fin del programa

Ha sido una experiencia inolvidable, así como la posibilidad de compartir ideas con el resto de los bloggers y proporcionar feedback sobre la experiencia con los productos directamente a Microsoft.

No puedo más que expresar mi agradecimiento a Microsoft EMEA por hacer posible este viaje, por la atención prestada y por la oportunidad que ha representado esto para mí. Gracias también a aquellos que leen el blog y que han permitido que sea posible esta cobertura.

En BBC Mundo: Lo más impresionante del CES

Estar en el CES me ha dado la oportunidad de, además de poder realizar colaboraciones con Govoid y Trecebits, escribir en la sección de Tecnología de BBC Mundo.

En este artículo resumo las características que más me han impresionado del evento, entre las que están los Ultrabooks, la mesa Surface o la PS Vita, entre otros.

Enlace: Lo que impactó a un joven bloguero en la feria tecnológica de Las Vegas en BBC Mundo.

Desde Las Vegas, #CES 2012

Desde el Venetian Palazzo de Las Vegas, empieza mi cobertura del Consumer Electronics Show 2012.

Gracias al equipo de Microsoft España y Microsoft EMEA, un grupo de estudiantes y bloggers nos hemos venido a la ciudad del pecado a cubrir el evento.

El evento

El CES es un evento que lleva celebrándose anualmente desde 1995, aunque surge en el año 1967. Considerada una de las mayores ferias que se celebra en Las Vegas y no se encuentra abierta al público en general, sino que solamente van asistentes relacionados con la industria o prensa.

Por este evento han pasado fabricantes como Sony, Microsoft, Motorola, Samsung, HTC, LG, Dell, Palm o Philips, entre otros

Como nota especial, este es el último CES donde veremos a Microsoft, ya que ha confirmado oficialmente que no seguirá presentando en la feria.

El viaje

Las más de 16 horas de viaje se hace un poco largas, pero la atención por parte de los empleados de Delta ayuda a que se pase de la mejor manera posible. Una comida ligera con pasta una hora tras despegar y una pizza una hora antes de aterrizar calman el estómago.

La diferencia horaria es de 9h con Madrid, lo que da una sensación de que estamos retrasados en el tiempo.

El hotel

En estos momentos nos alojamos en el Palazzo, uno de los tres complejos que forman el hotel Venetian, donde se realizará mañana la Keynote inaugural.

Qué se espera

Parece que habrán presentaciones de varios fabricantes (aparte de la keynote inaugural de Steve Ballmer de Microsoft), pero por la información que está disponible, podremos esperar novedades en:

  • Windows 8
  • Tablets con Android y con Windows
  • Ultrabooks
  • Cámaras digitales
  • Google TV
  • La Wii U

… entre otros. Espero poder comentar novedades de estos productos y más durante el evento.

Cobertura

La cobertura principal se realizará vía Twitter, usando el hashtag #CES para el evento principal, y #MSFTCES y #CESHAUS para la cobertura de Microsoft.

Aquí en el blog iré publicando las diferentes novedades que vayan surgiendo, así como los enlaces a algunas colaboraciones con otros blogs.

Más información

  • Sitio web oficial del CES

Regulando el brillo de nuestra pantalla con C#

Un problema que me ha pasado de manera recurrente (relacionado con los drivers) es que en mi portátil se puede dar el caso de volver de suspensión o encenderlo, y que la pantalla no se encienda, con el brillo al mínimo.

Tras probar varias alternartivas, encontré una gracias a la ayuda del siempre amable @cmilanf. Consistía en un ejecutable que accediera al control de brillo de Windows y lo estableciera al 100%. Este ejecutable debería cargar en el arranque de la sesión, o del sistema.

Leer más “Regulando el brillo de nuestra pantalla con C#”

Capacidad de compartir para nuestra aplicación Metro

Una de las opciones que incorpora Windows 8, es el chime o pestaña Share, que permite que nuestras aplicaciones puedan enviar contenidos a otras de una manera sencilla. Para ello, tanto la aplicación origen como la destino tiene que tener la capacidad de aceptar elementos (ShareTarget) o de enviarlos (SendTarget).

Leer más “Capacidad de compartir para nuestra aplicación Metro”

Instalando Windows 8 Developer Preview + Visual Studio 11 en un Macbook Pro

Instalar un sistema operativo que está en fase pre-beta puede tener sus complicaciones. Si lo instalas en un Mac, la cosa se puede complicar aún más. El sistema que tengo (Un MacBook Pro 13′ de mediados de 2010) con una única partición de OSX. No quiero instalarlo en nativo 100%, así que instalaré vía Bootcamp una copia de Windows 7 Profesional x64 y encima de ella, Windows 8 versión x64.

1. Particionar

El primer paso será reducir el tamaño de nuestra partición para poder hacer hueco para Windows.

Para ello, usamos el Asistente Boot Camp que nos permite reducir el tamaño de nuestra partición de OSX, aunque podemos encontrarnos con un error de este tipo:

El disco no puede dividirse en particiones porque algunos archivos no pueden moverse. Guarde una copia de seguridad del disco y utilice la Utilidad de Discos para formatearlo como un único volumen Mac OS Plus (con registro). Restituya la información en el disco y vuelva a usar el Asistente Boot Camp

Evidentemente no queremos formatear el ordenador, ya que sería cuanto menos, un contratiempo. Podemos omitir este error usando los pasos siguientes:

  1. Abrir Utilidad de discos.
  2. Seleccionar el disco que queremos reparticionar.
  3. Reparar disco y Reparar permisos.
  4. En la pestaña Particiones reduciremos el tamaño al tamaño que querramos.
  5. Una vez que hayamos reducido la partición la volveremos a ampliar, y ya podremos usar Boot Camp.

En este proceso lo que hemos hecho ha sido mover los ficheros a otra parte del disco, un proceso que el asistente de BootCamp no soporta, pero Utilidad de Discos sí.

2. Instalar Windows 7

Tras usar el asistente de Boot Camp, instalamos Windows 7 (en mi caso versi’on  siguiendo los pasos del instalador. Puede pasar que en el transcurso de la instalación el instalador se quede colgado (En el apartado de “Completando Instalación”), si ese es tu caso, vuelve a grabar la iso de Windows 7 que tengas (si eres estudiante universitario puedes acceder mediante el programa Microsoft Academic Alliance) porque tendrás archivos corruptos.

3. Instalar Windows 8

En la web de Scott Hanselman recomienda instalarlo mediante un pen-drive USB, eso es genial porque ahorras en grabar discos, además es mucho más rápido. Desafortunadamente los mac no permiten arranque desde USB de nada que no sea un disco con una instalación de Mac OSX (http://support.apple.com/kb/HT1948) así que nos tocará grabar la ISO y luego instalarlo a la vieja usanza, la pega en este caso es que perdemos las herramientas de desarrollo, pero todo se puede arreglar.

Antes de reiniciar, crearemos el disco virtual siguiendo los siguientes pasos:

  1. Abrir Panel de Control / Herramientas Administrativas / Administración de Equipos
  2. Desplazarse al apartado Discos
  3. Crear un Nuevo VHD, asignamos una capacidad de 60 GB, con 40 deberían bastar, pero nos aseguramos.

Ahora podremos reiniciar el ordenador, cargar el disco de Windows 8, y comenzar el instalador. (Nota. Es recomendable, o bien tener un teclado externo para los próximos pasos, o bien poner la distribución del teclado en inglés y poner los caracteres especiales a ciegas, ya que en mi caso el instalador no reconocía la tecla correspondiente a \).

Al llegar al apartado de selección de discos pulsamos Shift + F10, lo que nos mostrará una ventana de comandos, y tendremos que montar el disco virtual que hemos creado antes, para poder instalarlo ahí. Los comandos son los siguientes (cuando lo instalas por 5ª vez te los aprendes de memoria, palabra).

  • select vdisk file=”C.\ruta\a\disco”
  • attach vdisk

Si volvemos al instalador, y pulsamos el botón de Actualizar (o click en F5, para el mismo efecto) y nos dejará seleccionar el disco que hemos creado hace un rato, y podremos instalar Windows ahí, y completar la instalación.

4. Instalar los drivers

En este caso es igual que anteriormente, solo que si no nos deja ejecutarlo tendremos que usar compatibilidad con Windows 7. Para ello, click derecho sobre el instalador, pestaña compatibilidad y seleccionamos Windows 7. Tras ejecutar el instalador, tendremos audio, resolución decente, e incluso compatibilidad con el Magic Mouse para el scroll.

5. Instalar Visual Studio 11

En mi caso el instalador web no funcionó, así que recurrí a la versión ISO (disponible aquí: http://www.microsoft.com/download/en/details.aspx?id=27538) para la instalación. Como Windows 8 incorpora gestión de imágenes ISO, podemos montarla directamente sin tener que recurrir a otros programas.

En mi caso la instalación se congeló (literalmente), en varias ocasiones, para lo cual reiniciaba el ordenador, tras lo que la instalación continuaba. Tras 5 o 6 reinicios y varios quebraderos de cabeza, se instaló toda la suite.

Aún faltaba un pequeño detalle, y es que Visual Studio 11, pese a incluir las herramientas para desarrollar aplicaciones Metro, no incluye elementos clave para ejecutarlas. Estos elementos sí que están disponibles en la ISO que incluye las herramientas de desarrollador (que ocupa unos 5 GB y no pude instalar al no contar con DVDs de doble capa).

Por suerte se han publicado los ficheros necesarios en esta web http://weblogs.asp.net/bsimser/archive/2011/09/17/fixing-the-makepri-exe-error-on-windows-8.aspx para que así podamos tener las herramientas para empezar a jugar con Windows 8.

Como última recomendación, si tenéis errores a la hora de ejecutar vuestras aplicaciones, probad a cambiar la resolución un par de veces, y se solucionará.

Fuentes:

Instalar Ruby on Rails en Windows y no morir en el intento

Por motivos oscuros me he visto en la necesidad de instalar Ruby on Rails en Windows, para preparar una charla. Tras intentar instalar su homónimo para .net (IronRuby) y no conseguir éxito, intenté hacer lo mismo con la versión oficial, pero, surgieron problemas de conflictos entre ambas versiones, ya que comparten comandos y se puede formar un lío.
Leer más “Instalar Ruby on Rails en Windows y no morir en el intento”