sábado, 31 de enero de 2015

Como saber los servicios windows asociados a un proceso

El otro día aprendí algo que no recordaba, digo que no recordaba porque seguro que en algún momento lo sabía y uno ya tiende a olvidar cosas que no usa. Mi ordenador iba bastante lento, así que mire los procesos que estaban corriendo. Me di cuenta que había varios procesos svchost.exe es el nombre de proceso genérico que se ejecuta de librerías dinámicas enlazadas. Las librerías dinámicas, como arcihvos .DLL, no pueden ser ejecutados directamente, por lo que necesitan a un archivo ejecutable que los llame. Para cada servicio de Windows que funcione en base a una librería DLL determinada, se ejecuta un proceso de svchost.exe independiente, pero muchas veces los virus se enmascaran en este proceso.

Pues bien, para saber los servicios que tiene en ejecución un proceso lo que hay que hacer desde el administrador de tareas es seleccionar el proceso e ir a la opcion ir a servicios.


Te apareceran señalados todos los servicios que son ejecutados por ese proceso

lunes, 12 de enero de 2015

Programación en Android (V)

En este post vamos a comentar cuales son las piezas básicas para comenzar a programar con Android. Los componentes son las piezas básicas con las que se construye una aplicación Android. 

Existen cuatro tipos fundamentales de componentes, cada uno de los cuales tiene una función distinta, así como un ciclo de vida distinto (que define cómo se crea y destruye dicho componente)


  • Actividades: Cada Actividad (clases java que extienden a Activity) representa una única pantalla de la aplicación, sobre la que el usuario puede interactuar. Por lo tanto, una aplicación con tres pantallas distintas, tendrá tres Actividades distintas e independientes.
  • Servicios Un Servicio (clase java que extiende a Service) es un componente que se ejecuta en segundo plano con el objeto de realizar tareas de larga duración de forma que no se bloquee la interacción del usuario con la Actividad que esté ejecutándose en ese momento. A diferencia de las Actividades, un Servicio no provee una interfaz de usuario. 
  • Proveedores de Contenido: Los Proveedores de Contenido (subclases de ContentProvider) gestionan conjuntos de datos que la aplicación comparte con otras aplicaciones. Los datos compartidos pueden almacenarse en distintos lugares como, por ejemplo, en una base de datos SQLite, o en un archivo en el sistema. Estos datos compartidos podrán ser consultados por otras aplicaciones e, incluso, ser modificados, siempre y cuando el Proveedor de Contenido lo permita (ejemplo contactos del móvil).


  • Receptores Broadcast: Los Receptores de Broadcast, o de Eventos (subclases de BroadcastReceiver) escuchan y responden ante un amplio rango de anuncios que ocurren en el sistema continuamente (“batería baja”, “GPS encendido”…). Estas clases no tienen asociado un interfaz de usuario, pero sí que pueden generar notificaciones en la barra de estado para avisar al usuario.
  • Intents: Por último, se ha de resaltar una diferencia en el diseño del sistema Android respecto al comportamiento normal de aplicaciones Java. Una aplicación java puede iniciar un componente de cualquier otra aplicación. Debido a las restricciones de permisos existentes en el sistema Android, y al ser dos procesos separados, la aplicación no puede invocar directamente al componente de la otra aplicación, sino que ha de enviar un mensaje al sistema que especifique su intención (Intent) de iniciar aquel particular componente y el sistema activará dicho componente. Esta peculiaridad provoca que las aplicaciones Android no tengan un método principal de entrada “main()”.

lunes, 5 de enero de 2015

Relacionar tablas en Excel 2013 y crear tablas dinámicas con ellas

El nuevo Excel 2013 ha nacido con un modelo de datos integrado con lo cual para relacionar tablas ya no tendremos que usar las típicas funciones como BUSCARV. Podemos crear una relación entre dos tablas de datos basada en los datos que coincidan entre ellas. 

Una vez hecho esto podemos crear hojas de Power View y generar tablas dinámicas y otros informes con campos de cada tabla, incluso cuando las tablas sean de orígenes diferentes. 

Pongamos el siguiente ejemplo y vemos como se hace:

Tenemos 2 tablas, una con los productos, las cantidades y los países de origen y otra tabla con la lista de países de origen tal que así:





Debemos seguir los siguientes pasos:
  • Asegurarse de que el libro del que queremos sacar la relación contiene al menos dos tablas y que cada una tiene una columna que se pueda asignar a una columna de otra tabla.

  • Asigne un nombre significativo a cada tabla: en Herramientas de tabla, haga clic en Diseño > Nombre de tabla y escriba un nombre.


  • Compruebe que la columna de una de las tablas tenga valores de datos únicos sin duplicados. Excel solo puede crear la relación si una columna contiene valores únicos.

  • Haga clic en Datos> Relaciones
    • En el cuadro Administrar relaciones, haga clic en Nueva.
    • En el cuadro Crear relación, haga clic en la flecha abajo de Tabla y seleccione una tabla en la lista.
    • En Columna (externa), seleccione la columna que contiene los datos que se relacionan con Columna relacionada (principal)
    • En Tabla relacionada, seleccione una tabla que tenga al menos una columna de datos relacionada con la tabla recién seleccionada en Tabla.
    • En Columna relacionada (principal), seleccione una columna que tenga valores únicos que coincidan con los valores seleccionados para Columna.


Con esta relación creada cuando creemos tablas dinámicas podremos analizar datos de las otras tablas, dado que nos saldrán sus columnas para seleccionarlas como filtros, columnas valores o filtros