Forma alternativa, si no se tienen instaladas las pstools
shutdown -s -f -m \\equipo
viernes, 16 de diciembre de 2011
lunes, 28 de noviembre de 2011
Ruta de la BD actual en MS Access VBA
Pues eso:
Public Function GetDBPath() As String
GetDBPath = CurrentProject.Path & "\"
End Function
Más detalles aquí:
http://www.ammara.com/access_image_faq/get_mdb_database_path.html
GetDBPath = CurrentProject.Path & "\"
End Function
Más detalles aquí:
http://www.ammara.com/access_image_faq/get_mdb_database_path.html
jueves, 13 de octubre de 2011
Las dichosas eñes - PHP + Informix + SQLite3
En PHP, al migrar datos de una BD Informix a una SQLite3, me he encontrado con que las eñes se grababan mal. Los datos los recupero así:
Solución: usar la función utf8_encode.
Y todo funciona a la perfección.
$ape1=trim(odbc_result($rs,"ape1"));
Solución: usar la función utf8_encode.
$ape1=utf8_encode(trim(odbc_result($rs,"ape1")));
Y todo funciona a la perfección.
martes, 6 de septiembre de 2011
Obtener la fecha y hora en una cadena (Windows)
Esto es útil para generar automáticamente ficheros que incluyen en su nombre la fecha y hora (normalmente, copias de seguridad). Normalmente, yo lo utilizo en ficheros de script (CMD o BAT).
set HH=%time: =0%
set FECHA=%date:~-4,4%%date:~-7,2%%date:~0,2%%HH:~0,2%%time:~3,2%
Con esto, ya podemos generar un fichero como
Seguro que se puede hacer en una línea, pero me salió así y tampoco me quise calentar mucho más la cabeza. Ahora, si alguien tiene la solución elegante y me la manda, la pondré aquí.
set HH=%time: =0%
set FECHA=%date:~-4,4%%date:~-7,2%%date:~0,2%%HH:~0,2%%time:~3,2%
Con esto, ya podemos generar un fichero como
echo "realizando tarea" > log_%FECHA%.log
Seguro que se puede hacer en una línea, pero me salió así y tampoco me quise calentar mucho más la cabeza. Ahora, si alguien tiene la solución elegante y me la manda, la pondré aquí.
miércoles, 31 de agosto de 2011
Ejecutar aplicaciones en un equipo remoto con Pstools
Para ejecutar un programa en otro equipo de nuestra red, las pstools son una muy buena opción.
Descarga: http://technet.microsoft.com/es-es/sysinternals
Una vez instaladas, añadir al path (Mi Pc, clic derecho, Propiedades, Opciones avanzadas, Variables de entorno) la ruta de instalación.
Y ahora, los ejemplos:
Con pskill también podemos matar procesos que no hayamos iniciado remotamente, por si alguien imaginaba que sólo podíamos matar los lanzados con psexec.
Descarga: http://technet.microsoft.com/es-es/sysinternals
Una vez instaladas, añadir al path (Mi Pc, clic derecho, Propiedades, Opciones avanzadas, Variables de entorno) la ruta de instalación.
Y ahora, los ejemplos:
Ejemplo 1. Ejecutar la calculadora de windows en el otro equipo
psexec \\direccion_ip -u dominio\usuario -p password -i calc
(si no ponemos la -p password, nos la pedirá en el momento de ejecutar)
Ejemplo 2. Ejecutar un programa que no existe en el equipo remoto (opción -c, copiar)
psexec \\direccion_ip -u dominio\usuario -i -c ejecutable.exe
Ejemplo 3. Matar el proceso
pskill \\direccion_ip -u dominio\usuario ejecutable
(no es necesario poner .exe)Con pskill también podemos matar procesos que no hayamos iniciado remotamente, por si alguien imaginaba que sólo podíamos matar los lanzados con psexec.
Ejemplo 4. Apagar el equipo remoto
psshutdown \\direccion_ip -u dominio\usuario
Se muestra un aviso y una cuenta atrás de 20 segundos
martes, 30 de agosto de 2011
Cuenta atrás en una página web (Javascript) para redirigir a otra página
Útil para mostrar un aviso durante unos segundos (por ejemplo, "Este mes finaliza el plazo para presentar la declaración de la renta") y luego cargar la "verdadera" página de inicio del sitio web.
Guardar el texto siguiente un un fichero con nombre "atras.htm"
Guardar el texto siguiente un un fichero con nombre "atras.htm"
<html> <head> <title> Ejemplo de cuenta atrás </title> </head> <body> <h1>Ejemplo de cuenta atrás</h1> <form name="redirect"> <h2>Vamos contando... <span id="Segundos"></span> <input type="hidden" size="3" name="contador"> segundos restantes </h2> </form> <script language="javascript"> var targetURL="atras.htm" //URL A LA QUE DIRIGIR. Redirige a sí misma var cuentaAtras=10 //SEGUNDOS A CONTAR var segundoActual = document.redirect.contador.value=cuentaAtras+1 function contarParaRedireccionar(){ if (segundoActual!=1){ segundoActual-=1 var textoSegundos = document.getElementById("Segundos"); textoSegundos.innerHTML =segundoActual } else { window.location=targetURL return } setTimeout("contarParaRedireccionar()",1000) } contarParaRedireccionar() </script> <p>Si no se le redirige automáticamente, pulse <a href="atras.htm">aquí</a></p> </body> </html>