Error: ¡Archivo dll no encontrado!


Mi esposa y yo decidimos que había llegado el momento de cambiar de laptops (la de ella, por viejita, y la mía, porque la quemé).  Tras revisar las mejores opciones, comprarlas y usarlas, nos quedamos con la duda de qué hacer con las laptop viejas.

La mía, como ya dije, está quemada, y estamos viendo si comprar el repuesto o darla por perdida.  Pero la de ella, aparte de la pérdida de capacidad normal por los años que tiene, la verdad es que funcionaba bastante bien, por lo que decidimos instalarla de cero y dejarla conectada a nuestra televisión, para ver alguna película o jugar algún video-juego sin estar conectando y desconectando las otras laptops.

Una vez reinstalada la laptop, y al ir a instalarle un programa nuevo, nos encontramos con el siguiente regalo:


The program can't start because MSVCP140.dll is missing from your computer.


Si te encuentras con este mensaje, o alguno similar (dependerá de tu versión de Windows, idioma, etc, y de cuál es el archivo dll exacto que falta), en general la causa es la misma siempre: hay un archivo dll que te falta en tu sistema, lo que evita realizar la tarea que quieres llevar a cabo.


¿Qué es un archivo dll?

Un archivo dll (por las siglas de Dynamic Link Library, que traduce algo así como Librería de Enlace Dinámico) es el término con el que se designan a los archivos reutilizables que contienen código y datos usados por el sistema operativo u otros programas.  A pesar de que el concepto se maneja en casi todo sistema operativo, los archivos dll en particular están asociados únicamente a Windows.


¿Por qué falta el archivo dll en mi sistema?

Esto puede deberse a varias razones, pero las más comunes son:

  • Que nunca existió el archivo dll en cuestión, porque la instalación del programa que lo requiere no lo agregó.
  • Que la instalación de un programa haya reemplazado el archivo dll con una nueva versión incompatible.
  • Que la desinstalación de un programa haya eliminado por error un archivo dll compartido y en uso por otro programa.

Este error no debería ocurrir, pues un buen programa instalador o desinstalador debería asegurarse de dejar la librería en el estado apropiado, pero como cualquier usuario de Windows puede atestiguar, esto ocurre más a menudo de lo que es deseable.


Genial, ya entendí...  Y ahora, ¿qué hago?

Pues hay varias opciones para corregir la situación, aunque la verdad dependerá de cada caso la solución correcta.  A continuación les explico las más exitosas:


1.- Agrega a mano el archivo dll faltante a Windows.

Esta solución es relativamente sencilla: consigue el archivo dll y cópialo a tu máquina.  Esto puedes hacerlo desde otra computadora en la que confíes, si es que tienes una a mano, o desde internet.  El problema con usar internet, claro, es que quizás el archivo dll que estás obteniendo no sea confiable, o esté manipulado de alguna forma para dañar tu equipo o robar información.

Ya queda de la mano de cada quién qué site usar de forma confiable para obtener el archivo dll.  En lo personal yo uso dll-files.com, que siempre me ha funcionado, pero no les puedo garantizar que sea 100% seguro.

Suponiendo que usen el site que indico, simplemente entren a la dirección que les compartí y escriban en la caja de búsqueda el nombre del archivo dll faltante.  El resultado les mostrará información completa del archivo, como para qué sirve, qué aplicación lo instala, e incluso de dónde pueden obtener dicha aplicación (normalmente del site de Microsoft).  Al final de la página está un link de descarga del archivo dll, si deciden confiar en el site en cuestión.

Como dije, hay innumerables sites que hacen esta función.  Ya queda en manos de ustedes decidir en cuál confiar...

En mi caso, descargué el archivo dll del site, y al ir a copiarlo al directorio correcto (normalmente C:\Windows\System32) me llevé la sorpresa de que ¡ya estaba ahí el archivo!

Obviamente, faltaba algo más que solo el archivo dll.  Tocó pasar al siguiente paso...


2.- Instala el programa que agrega el archivo dll faltante.

Dado que los archivos dll no aparecen mágicamente en tu máquina, sino que algo los instala, siempre puedes descargar el programa original y reinstalarlo.  La dificultad aquí radica en cómo saber cuál es el programa original.

Aunque no confíes en algún site para descargar el archivo dll, algunos de ellos dan información certera sobre dónde conseguir el programa original.  Por ejemplo, en mi caso, el site dll-files.com me indicó que el archivo dll se instala como parte del paquete de Microsoft Visual C++, que se puede descargar directamente del site de Microsoft, que si es 100% confiable.

Tras descargar el instalador indicado para mi Windows, lo instalé y reinicié la máquina... Y no funcionó.  Leyendo la documentación del site, se me recomendaba instalar ambas versiones del paquete de Microsoft, por lo que eso intenté.  Tras instalarlo y reiniciarlo, ¡el problema quedó corregido! ¡Éxito!


3.- Otras opciones.

Hay más opciones a probar si lo anterior no llegara a servir, pero la verdad es que son opciones más rebuscadas, y que solo funcionarán en un mínimo número de casos.  Sea como sea, las comparto aquí para que las tengan en el radar:

  • Si el programa que te está fallando está ya instalado en la máquina, puedes probar a hacer una instalación completa de dicho programa, con la esperanza de que reinstale el archivo dll necesario.
  • Puedes revisar si tu computadora tiene algún virus que esté generando el problema.  Una corrida de tu antivirus preferido quizás te ayude a corregir la situación.  Yo en lo personal confío mucho en Windows Defender, que viene incluído en la instalación de Windows.


Como siempre, espero que esta información les haya sido de utilidad.  ¡Quedo al pendiente de cualquier duda!

-- Gorka Siverio

Oracle Enterprise Manager 10g/11g

¡Bienvenid@s!

Para tod@s aquell@s Administradores de Bases de Datos (DBA por sus siglas en inglés) que día a día trabajan en pro de mantener un rendimiento óptimo de las instancias que tienen a su cargo, cualquier herramienta que ayude a interpretar, comprender y absorber la gran cantidad de métricas de rendimiento que tiene la base de datos (DB también por sus siglas en inglés) es una gran ayuda.  Cuando de Oracle se trata, el Enterprise Manager no es una excepción.

Esta herramienta es particularmente útil para identificar SQLs problemáticos, servicios con un gran consumo de recursos, cuellos de botellas y otros síntomas y problemas y ofrece una interfaz gráfica para interactuar con los paquetes ofrecidos por Oracle para todo lo que se refiere a entonación de la DB.

¿Pero qué pasa si no instalaron esta herramienta cuando estaban creando la instancia de la DB?  ¿Me voy sólo con la cónsola? ¿Me resigno a trabajar como “en los viejos tiempos”?

Claro que no, si llegaste aquí es porque estás buscando cómo puedes configurar o reconfigurar el Enterprise manager así que conseguiste tu respuesta.  pasemos a lo propio.

Si lo tienes instalado pero no levanta

   1: oracle@server: ~$ emca -deconfig dbcontrol db
   2: oracle@server: ~$ emca -repos drop

Tanto la operación de deconfig como la de drop llevan tiempo, así que un poco de paciencia y a esperar que terminen.

Para recrear el repositorio y configurar el EM




   1: oracle@server: ~$ emca -repos create
   2: oracle@server: ~$ emca -config dbcontrol db

Una vez más, estamos realizando dos operaciones que son demoradas, nos tomamos un café, o un jugo o caminamos un rato para darle tiempo y cuando volvamos…  Estaremos listos y con EM instalado y corriendo!


Salud y que les ayude mucho!

Creación de un nuevo repositorio SVN


Aunque tengamos un servidor de SubVersion ya instalado, es necesario que creemos un repositorio cada vez que queramos... pues eso, tener un repositorio nuevo.

Crear un repositorio es sencillo, pero los pasos pueden ser confusos si no se conocen. Lo primero es conectarnos al servidor como tal (asumiremos que es un server Linux, pues el ejemplo es más interesante, y que lo haremos desde una máquina Windows, pues la mía es así).

Para conectarte a un servidor Linux desde Windows puedes usar algún programa como PuTTY, que te permite ejecutar varias funcionalidades remotas desde máquinas Windows a máquinas Linux. Conéctate al servidor (tendrás que conocer el usuario administrador y la clave, o te auguro un mal futuro) y comenzaremos a trabajar.

El svn normalmente está en /home/svn/. Vete a esa ruta, y ahí creas el repo:

$ svnadmin create

Seguramente al tratar de hacer commit te dará un error "Authorization Error". Tienes dos opciones (los archivos en cuestión están dentro de /conf:

a) Editar el archivo svnserve.conf para colocar que cualquiera pueda escribir (descomentas anon-access y lo colocas en write)

b) Editar el archivo svnserve.conf para colocar que los autenticados pueden escribir (descomentas auth-access y lo colocas en write); Editar el archivo passwd para agregar el usuario y clave que podrán editar.

Para editar dichos archivos puedes buscarlos por FTP (PSFTP, por ejemplo, que viene con PuTTY. No es que les haga propaganda, pero son los que uso!), editarlos y luego subirlos (PSFTP te los deja por defecto en C:\Documents and Settings\).

Y con eso estamos listos. Les funcionó?

IDEA 10.5 - Pre-encuentro


Me acabo de bajar IDEA 10.5 para probarlo. Aún no lo instalo, pero compartiré con ustedes algunas cosas de las que supuestamente tiene...
  • Soporte Java 7
  • Más rápido (ya esto solo vale la pena!)
  • Más chévere
  • Mayor soporte para Groovy, Spring, Android, Ruby, Python, Scala, PHP...
  • Mayor integración con SVN (incluso aplica parches él mismo)
Hasta ahora, vamos bien, verdad? Pues se pone mejor.
  • Auto-Completación sin pisar ninguna tecla extra (si lo de antes era magia, esto ya serán milagros!).
  • Refactor más fáciles de usar
  • Debugger de JavaScript
  • Cliente de comparación (adios a Beyond Compare y similares)
  • Arreglaron el bendito search, que era una de las cosas que más apestaban de IDEA.
Y el colmo? Ahora trae un BugTracker, YouTrack (bueno, te lo puedes bajar), con lo que podemos botar hasta nuestras ticketeras. De aquí a poco, podremos botar a nuestros jefes gracias a algún plug-in! :D

Apenas lo instale y pruebe, les echaré los cuentos...


Akamai NetSession Interface



Soy de los usuarios a los que le molesta que la computadora tome decisiones por mí sin consultármelo. Me molesta tener programas corriendo en background, revisando cosas y calculando cálculos de los que no tengo idea que existen, mientras se comen los recursos de mi máquina, que estoy tratando de usar para ejecutar procesos que sí me interesan.

En particular los updaters o downloaders me generan algo de malestar. Entiendo que un programa trate de actualizarse al momento de iniciar, para ver si hay nuevas versiones que nos interesen. Pero cuando dicho programa deja un demonio corriendo en background, todo el tiempo, aún cuando llevas más de un mes sin usarlo, es cuando me molesto.

Uno de esos casos es el Akamai NetSession Interface.

Akamai es una suite de soluciones enfocadas al mejor uso de la red. Permite desde monitoreo de la red, hasta conexiones p2p, pasando por managers de las descargas de tu máquina. Como dije arriba, no dudo que dichos programas sean muy útiles, pero me gustarían más si me preguntaran cuándo conectarse, si me avisaran que se están instalando, si me avisaran que puedo configurarlos.

En particular el Akamai NetSession Interface es una aplicación que clama mejorar enormemente la calidad y la velocidad de las descargas desde sitios que soporten tecnología Akamai. Se encarga de manejar el caching, la seguridad, y es fácilmente removible.

En mi idioma, eso significa lo siguiente: es un programa que se instala sin avisarte (ya me dirás cómo remueves fácilmente algo que no sabes que existe), y que se encarga tanto de ocupar espacio en tu máquina (no borra los archivos que guarda en el cache, por lo que tuve un instalador que medía dos gygas viviendo en mi disco por meses) como de ocupar tus recursos (el servicio inicia y trata de conectarse sin avisarte, siempre que inicies sesión, para compartir los archivos que te has descargado). Me enteré de la existencia de esto por casualidad, gracias a un mensaje de confirmación de conexión debido a un proxy.

Para evitar que este molesto inquilino siguiera usando mis implementos sin mi permiso, tenía varias opciones, aunque es difícil conseguir documentación al respecto. Opté por no desinstalarlo, pues al parecer Adobe trabaja con este programa, por lo que no me servía eliminarlo y que se volviera a instalar, silencioso cual ninja, la siguiente vez que descargara un programa que lo usara. La solución era amarrarlo para mantenerlo bajo control.

1.- Vayan a Inicio -> Configuración -> Panel de Control -> Panel de Control de la Interfaz NetSession de Akamai.

2.- En el primer tab (General), seleccionen el radio button "Deshabilitar" en la opción Permitir Cargas. Eso hará que los demás usuarios con Akamai no se puedan descargar archivos desde tu máquina.

3.- En el segundo tab (Avanzado), revisen la sección de Memoria Caché de Descarga. Ahí pueden ver el espacio que están ocupando los archivos descargados, así como seguir el link para revisarlos, o eliminarlos.

4.- En el segundo tab (Avanzado), presionen el botón "Detener", si es que lo ven. Eso detendrá el servicio, aunque no evitará que vuelva a iniciarse al prender la máquina de nuevo.

5.- Por último, para evitar que el zombie regrese de la muerte cuando reiniciemos la máquina, ejecutemos services.msc (para los no iniciados, vayan a Inicio -> Ejecutar, tipeen services.msc y presionen Aceptar). Ahí busquen el servicio Akamai NetSession Interface, y configúrenlo para que el Tipo de Inicio sea Manual (no lo deshabiliten, para que los programas que lo necesiten puedan usarlo, pero solo bajo demanda).

Eso debería bastar para evitar que Akamai, el ninja fujitivo, robe los recursos de tu máquina sin que te enteres... Bienvenido cualquier comentario o corrección al respecto!