La culpa fue del spectrum

La culpa fue del spectrum

sábado, 20 de mayo de 2017

Hibernación en windows.

Hay enormes defensores de esta posibilidad que nos permite windows, creo recordar que apareció por primera vez en windows xp.

Yo particularmente no soy muy dado a su utilización, para mi en contra de todas las ventajas que se comentan, sigo pensando que apagar un sistema windows todos los días es sano, una buena costumbre. Sé que ya no es imprescindible pero para mi es mejor, entre otras cosas porque en muchas empresas se siguen realizando tareas programadas para el arranque.

La hibernación me parece útil para gente con mucha movilidad y que solo debe de apagar el equipo portátil al finalizar el día. Para estos casos también es importante tener una potente máquina y un buen disco SSD, en caso contrario si el número de aplicaciones en uso es alto, el rendimiento se verá lastrado. 

Para equipos de sobremesa, vuelvo a repetir, yo no lo veo necesario, incluso en ocasiones con usuarios poco avanzados me han dado dolores de cabeza. En windows 10 no aparece como una opción por defecto en el menú, sin embargo si aparece suspender. 

Aun así todo esto no deja de ser una opinión, el motivo de la entrada más que nada es recordar como desactivarlo rápidamente desde una consola. 

Para desactivarlo es tan sencillo como poner en una consola como administrador el siguiente comando.

              powercfg -h off (también powercfg -hibernate off)

Volverlo a activar con powercfg -h on.

Esto elimina o crea el archivo hiberfil.sys

martes, 18 de abril de 2017

Después de instalar windows 7

Después de instalar windows 7, a fecha de hoy, muy posiblemente te puedes enfrentar a horas de actualización de parches. Es muy posible incluso que tu sistema no descargue nada y se quede en estado "buscando actualizaciones" casi de forma eterna.

Microsoft no tiene mucho interés en que sigas usando windows 7, ni siquiera a nivel profesional. Para ellos ese sistema ya está "rentabilizado", ahora toca windows 10. La sana costumbre de hacer service pack, que facilitaban el proceso de actualización, lamentablemente se ha perdido.

Si tu cd de instalación de windows 7 es muy antiguo y no es un 7sp1 lo primero será instalar el service pack 1.

Después descarga los siguientes parches en este orden. (solo para versión 64bits)

1 Windows6.1-KB3020369-x64
2 Windows6.1-KB3172605-x64
3 windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9

Una vez instalados, windows update seguirá descargando lo que falte de forma fluida.


sábado, 4 de marzo de 2017

Licencias Citrix - udadmin

Comando udadmin

Es muy común tener que borrar usuarios para recuperar licencias para nuevos usuarios.
Para realizar esto primero tenemos que conectarnos al servidor citrix que tenga el servidor de licencias (es posible que incluso sea un servidor independiente para esta función si tu organización así lo requeire)
Buscar la ubicación de udadmin, normalmente se encuentra en c:\Program Files (x86)\Citrix\Licensing\LS
Después ya solo nos queda operar con el comando tal como indica su ayuda.

Sintaxis

udadmin [-options] [-delete | -list ]

Opciones

-f nombre_función
Cuando se usa con -list o -delete, muestra o libera la licencia de nombre_función especificada para el usuario o dispositivo solamente.
-user nombre_usuario
Libera la licencia para el usuario especificado en nombre_usuario solamente.
-device nombre_dispositivo
Libera la licencia para el dispositivo especificado en nombre_dispositivo solamente.
-a
Enumera todas las funciones y versiones instaladas en el servidor de licencias.

Argumento

-delete
Libera la licencia para un usuario, una función o un dispositivo por vez.
-list
Muestra los usuarios y dispositivos con licencias, y la fecha de la última actualización. Se muestra la fecha de la próxima actualización si se ha detectado mucha actividad en los 15 minutos desde el último informe.

Ejemplos

udadmin -list
Muestra todos los usuarios y dispositivos
udadmin -list -a
Enumera todas las funciones, versiones, recuentos de licencias, así como los usuarios y dispositivos de cada versión. Podemos ver claramente licencias instaladas y licencias en uso.
Version : 2017.0001
Installed: 50
In Use : 48 Users: 48 Devices: 0
udadmin -f XDT_ENT_UD -user flanagan -delete
Elimina un usuario flanagan de una función.
Siempre hay que usar la opción -f para indicar la función. El sistema nos indicará que la operación se ha realizado con éxito.

sábado, 4 de febrero de 2017

Antergos... Arch con instalación rápida y fácil


 

Está navidad renové mi pc de casa, este era un clonicazo montado por mi mismo en el año 2008, y claro el máquina ya estaba un poco agotada.

Con la falta de tiempo que sufro en la actualidad, me decidí por comprar un máquina ya montada a un precio lo más económico posible.

Termine con un I3 en un placa asus, con 4Gb de RAM y un disco duro de 1Tera. No es una gran máquina pero más que suficiente para el uso domestico que le dan, sobre todo, mis hijos.

En un futuro tendré que ampliar con un tarjeta gráfica y más memoria, pero de momento cumple.

Ahí tocaba instalar un linux, y esta vez decidí dejar de lado a Debian y probar algo nuevo. Una oportunidad perfecta para probar Antergos, son españoles, se basan en Arch y he leído cosas muy buenas sobre esta distro.

Instale como escritorio KDE, otra novedad teniendo en cuenta que últimamente estaba usando xfce.
El resultado de momento es impecable, a pesar de ser una distro de actualización continua, se mantiene muy estable y fluida.

Tanto la instalación como configuración la he realizado desde entorno gráfico y ni siquiera estoy utilizando la línea de comando para instalar software, cosa que en Debian hacía continuamente.

En definitiva una distro muy recomendable para todo aquel que quiera poder probar e instalar de forma rápida una Arch.

martes, 17 de enero de 2017

Propósitos para el nuevo año


Hacer una entrada mensual en el blog

Realizar mi primera aplicación en Rails

Hacer esa llamada

Aprovechar mejor el fin de semana

Dormir más durante la semana

Gestionar mi paciencia

Meditar diariamente

lunes, 15 de agosto de 2016

Rjb - Ruby Java Bridge

La gema rjb nos permite conectar desde ruby mediante un archivo jar a una base de datos usando el driver JDBC.
Yo lo suelo utilizar desde windows en pequeños programas de migración de tablas de una base de datos a otra. 

Una vez instalado ruby, para poder instalar la gema rjb, el sistema te pedirá que te descargues e instales el devkit de ruby, un jdk de java y que configures las variables JAVA_HOME.

Es importante que tengas en cuenta que ambas versiones de ruby y java deben de ser de la misma arquitectura para que funcione correctamente. En caso contrario creará la gema rjb pero después cuando la uses desde los programas te aparecerán errores.

En este caso las conexión es una "legendaria" base de datos de firebird por lo que me descargo el correspondiente jar. 
Un ejemplo que cuenta los registros de una tabla sería el siguiente. 

require 'rjb'
Rjb::load(classpath = 'C:/Software/Jaybird-2.2.11-JDK_1.8/jaybird-full-2.2.11.jar',['org.firebirdsql.jdbc.FBDriver'])

DriverManager = Rjb::import('java.sql.DriverManager')

begin
    sen="Select count(*) from TABLA1"
    connection = DriverManager.getConnection('jdbc:firebirdsql://ipserver:3050/carpetas_que_contiene_BD/EJEMPLO.gdb','sysdba','masterkey')

    statement = connection.prepareStatement(sen)
    result_set = statement.executeQuery

    while(result_set.next())
        puts result_set.getObject(1).toString
      end
ensure
     result_set.close if defined?(result_set) && !statement.nil?
     statement.close if defined?(statement) && !statement.nil?
     connection.close if defined?(connection) && !connection.nil?
end

sábado, 23 de julio de 2016

Uso de MONITOR en un programa RPGLE

Cuando realizamos un programa intentamos controlar todo lo que puede ocurrir con el fin de que el programa realice correctamente su función. Pero en ocasiones necesitamos monitorizar los posibles errores, para eso tenemos MONITOR.

Mi uso de MONITOR es bastante sencillo, yo introduzco MONITOR en un trozo de código donde me interesa poder controlar cualquier error, no lo uso siempre ni en todos los programas. 

El uso de MONITOR es muy simple

Comienza escribiendo MONITOR y se finaliza con ENDMON.

MONITOR;

 bloque de código que se quiere monitorizar 

ENDMON;

Dentro del bloque a monitorizar el error se controla usando ON-ERROR 

ON-ERROR puede controlar cualquier error, un error de programa, un error de fichero, o incluso un código de error específico. Para ello usa *ALL, *PROGRAM, *FILE o el código.

Un ejemplo podría ser este.

MONITOR;

   A=B/C;
   ON-ERROR *PROGRAM;
     A=0;
     DUMP;

ENDMON:

En este ejemplo el código ante cualquier error de programa que surgiera en la operación A=B/C, pondría la variable A a 0 y realizaría un vuelco que me permitiera ver con detalle lo ocurrido. 

Conduce entre la niebla

La culpa fue del spectrum