Como no sería yo si no llegara tarde a todos lados, hoy, diez años después de la aparición oficial de Windows XP les traigo en caracter de primicia exclusiva mi último descubrimiento:

Como deshacerse del hijo de puta: Ctfmon.exe en Windows XP

Convengamos también que nunca le puse ganas al asunto. En la época pre-xp uno simplemente lo bajaba de un hondazo desde el administrador de tareas, lo deshabilitaba después con cualquier cosa parecida a msconfig y se olvidava del asunto.

A la hora de los bifes, –en Windows XP-, ctfmon.exe es inmortal.

El engendro de mierda se regenera y no hay con que darle. Podés intentar de todo, que en el task manager lo vas a volver a encontar, mirándote fijo, desafiante, con una media mueca como tirando a sonrisa. Como diciendo: «Buen intento, idiota».

No hay con que darle.

No hay con que darle.

Nunca le puse ganas, decía, por que en realidad nunca me molestó en la cantidad necesaria como para que vaya a Googlear por ayuda pero que si intenté en su momento darle con de todo sin suerte.

Tengo que reconocer derrotado que si: Ctfmon.exe es inmune a msconfig, hijackthis, autoruns y un largo etcétera.

Continúa leyendo

Otro título sugerido: Carta abierta al Project Leader de Internet Explorer.

Estaba meditando hace minutos, cuantas cosas mal hechas hay en Windows. Errores no de los que hacen fallar al sistema operativo, si no errores de concepto. Errores estúpidos, errores de niño orgulloso, de programador obstinado, de pendejo de mierda:

– No me importa si el estándar de facto es que este programa haga la tal o cual cosa ante tal o cual situación. Mi programa no lo hace y si no te gusta, ahí tenés Linux, andá e instalátelo solo y buena suerte reproduciendo videos en flash.

No lo dicen abiertamente pero lo demuestran con hechos, año a año con cada versión nueva de Windows que vomitan, y mes a mes con cada tanda de parches y actualizaciones automáticas que promueven.

No puedo dar una fecha a ciencia cierta y me da fiaca googlear, pero sería pasado mediados de los noventa mas o menos cuando me choqué por primera vez con esto: Ni internet Explorer 3 en Windows NT ni Internet explorer 4 en Windows 95 sabían procesar una URL ingresada en la barra de direcciones si la misma incluía el número de puerto como sufijo pero no el http:// como prefijo.

Por si no se entendió, si la url tiene este formato: <nombre de dominio>.<tld>:<número de puerto> internet explorer no entiende nada. En contrapartida, todo funciona sobre rieles si se le avisa:

– Hijo bobo, ¿ves esto que sigue a continuación? Es una URL, así que para que puedas identificarla con propiedad, che programa estúpido, he decidido tomarme la molesttia de agregarle el prefijo http://, cosa que deberías haber hecho por tu propia cuenta. ¿Que mas esperabas que escriba en la “barra de direcciones” si no una dirección propiamente dicha?

Miden, ¡puedo pdocesar HTTP!

Miden, ¡puedo pdocesar HTTP!

En todo caso, podrías esperar que te avise si la URL que estoy ingresado debés procesarla como FTP por ejemplo, ingresando el prefijo ftp:// adelante, hacer lo mismo con HTTPS y entender que por omisión, si no te aviso nada, estoy hablando de HTTP, ¿verdad?

Continúa leyendo

Para todos los que viven hablando mal de Windows en favor de Linux les tengo una mala noticia: NTFS no tiene nada que envidiarle al mejor de los EXT4 o BTRFS, no señor. Si no estás de acuerdo, mas abajo podés dejar un comentario.

Como estará de bien hecho el sistema de archivos, que ¡hasta soporta enlaces simbólicos!. (Claro que pagando, como todo lo que viene del lado oscuro de la fuerza).

Y te digo mas: Hace mas de 12 años que NTFS soporta enlaces simbólicos. Desde Windows 2000 en adelante, de hecho. Para poder hacer uso de una característica tan “pro”, Microsoft pretendía que compremos el Resource Kit para la versión de WIndows correspondiente. Es decir, casi como cuando comprás un juguete nuevo y querés ponerlo a funcionar inmediatamente pero no podés por que “No incluye baterías”.

¿No entendiste un carajo todavía?

Un enlace simbólico es un archivo o directorio en cualquiera de tus unidades físicas formateadas en NTFS que no contiene nada si no que es simplemente un puntero, un indicador a otro archivo o directorio contenido en otra ubicación distinta de cualquiera de tus discos rígidos.

¿Nunca te preguntaste como hace Windows 7 para contener lo mismo en c:\documents and settings y c:\users? Bueno, eso mismo, por ejemplo.

Maldito el día en que me propuse ponerle una imágen a cada artículo. Ahora no se que poner en este y esto fué lo que apareció en Google images al googlear la palabra "junction".

Esto aparece en Google Images al buscar Junction. Maldito el día en que me propuse ponerle una imágen a cada artículo.

Si bien se le dá el nombre de enlace simbólico y el funcionamiento es mas o menos parecido, no confundir con los enlaces simbólicos y enlaces físicos de Linux por que para ser exactos, esto que en NTFS proponen como “simbólico” es mas bien un punto medio, una combinación de ambas ideas.

Un enlace simbólico en NTFS puede tener distinto nombre con respecto al archivo original, al igual que los enlaces simbólicos de Linux, pero a su vez es una entrada en la tabla de asignación que le da otro nombre al mismo contenido, como los enlaces físicos –o duros, hard links– en Linux.

Para que se entienda: Si bien puede llamarse distinto, si eliminás el enlace simbólico, te llevas puesta también la información que hubiera contenida en el archivo o directorio original. Esto con los enlaces simbólicos de Linux no pasa.

¿Que utilidad puede tener?

Muchas, o ninguna, depende de vos. A mi en particular se me ocurren unas cuantas. Tantas que hasta tengo junction en el path de ejecución –no miento– para tenerlo siempre a mano y acá es a donde quería llegar:

Si te comprás el Windows Resource Kit para tu versión de Windows, disponés de linkd, la utilidad para gestionar enlaces simbólicos. Si sos pobre pero querés linkd, vas y bajás junction de la gente de sysinternals, que paradójicamente hizo siempre tan buenas herramientas que fué comprada por Mícrosoft, que ahora te ofrece gratis lo mismo por lo que además te cobra por otro lado.

junction para windows usa exactamente la misma sintaxis que ln en Linux:

junction <que cosa> <en donde>

¿Querés que tu Windows XP tenga una carpeta c:\users como en Windows 7? Facil:

junction c:\users «c:\Documents and Settings»

Podés deshacer estos cambios usando:

junction –d c:\users

Que cosa mas inútil, ¿no?

…Y como era de esperarse viniendo de Microsoft: No funciona sobre unidades de red.

Hace un par de días escribí para Alt-Tab, –blog en el que colaboro esporádicamente y mucho menos de lo que quisiera– un efímero artículo intitulado «Sudo para Windows» en el que explicaba para el común de los usuarios como hace en el día a día un administrador de dominio para ejecutar comandos que necesiten privilegios administrativos sin necesidad de:

  1. Cerrar sesión.
  2. Cambiar de usuario a uno que sea administrador.
  3. Aplicar los cambios.
  4. Cerrar sesión de nuevo.
  5. Abrir la planilla de excel con las contraseñas de todos los usuarios.
  6. Intentar iniciar sesión nuevamente con el usuario no privilegiado.
  7. Encontrar que la planilla no tiene la contraseña actualizada.
  8. Intentar comunicarse con el usuario de la PC para preguntarle la contraseña y no poder.
  9. Blanquear la contraseña.
  10. Especificar una nueva.
  11. Actualizar la planilla de excel para que refleje los cambios.
  12. Mandarle un mail al usuario avisando que se le cambió la contraseña.
  13. Esperar el llamado del mismo en las próximas horas cuando no pueda iniciar sesión.
  14. Pasarle telefónicamente la contraseña nueva.

En uno de los comentarios, un lector del Blog de nombre Sergio, se despachó con un comentario en donde explica a grosso-modo, como se puede escalar privilegios de la misma manera en que yo lo propuse para ir desde un usuario común a administrador pero llevándolo un paso mas allá y saltando después desde administrador a system.

Una consola de comandos con privilegios de System, gracias a svchost.exe.

Una consola de comandos con privilegios de System, gracias a svchost.exe.

Si todavía estás leyendo esto y saltaste del asiento igual que yo cuando lo leí por primera vez, entonces no necesito explicarte las implicancias de poder ejecutar aplicaciones con privilegios de «system», ¿no?

Continúa leyendo