Archive for the 'programación' Category

matar un proceso en c#

En realidad este post es continuación de los anteriores, pero como ya aburre hablar del acelerómetro y demas, cambio el enfoque. Recientemente he formateado el ordenador (es lo que tiene jugar con la tabla de particiones sin prestar mucha atención…) y ya puestos he decidido otra aproximación para programar el botón de giro de pantalla. La idea es que ahora uso el botón para pausar o reanudar el giro automático (mediante el acelerómetro) de la pantalla del portatil, es decir, que en modo tablet, la pantalla gira segun la muevo, hasta que le doy al botón, entonces ya no gira hasta que vuelva a darle.
Para ello simplemente, lo que hago es mirar si el proceso esta en memoria. Si está, lo mato, y si no esta lo lanzo. Un codigo muy sencillo y bastante efectivo.
Para ello necesitamos acceso a la clase process , que está en System.Diagnostics, y en concreto 3 de sus metodos ,GetProcessesByNameKill y Start (no hace falta explicarlos mucho,¿ no?)

Así , en nuestro caso, para matar/lanzar el porceso SDTabletPC,  el codigo quedaría:

Process[] pArray = Process.GetProcessesByName("SDtabletPC");
if (pArray.Length == 0)
{
Process.Start("C:\\Program Files (x86)\\STMicroelectronics\\STScreenDetection\\SDTabletPC.exe");
}
else
{
pArray[0].Kill();
}

redireccionar desde un componente en symfony

si desde un componente necesitas redireccionar a otra página (@homepage en el ejemplo), y pruebas:
$this->redirect('@homepage');
Verás que no funciona. Tiene lógica, estas en un componente, en ‘un cacho’ del objeto, así, deberás acceder al controlador del objeto para poder redireccionar:
$this->getController()->redirect('@homepage');
Dicho esto, ahora habrá q pensar si realmente quieres redireccionar desde el componente. En mi caso, me parecía necesario hasta justo el segundo después de dar con el modo de hacerlo. Acto seguido, comenté la linea…

saber el modulo y/o acción el el que se ejecuta un partial en symfony

Haciendo un partial con un listado me he encontrado con el problema que al querer paginar el listado necesito saber el modulo y acción en que se está ejecutando ese parcial. Para eso nos viene de maravilla  $sf_context.

en el partial,  $sf_context->getActionName() nos devolvera el nombre de la acción, y  $sf_context->getModuleName() el del modulo,con lo que ya hacer el link_to es trivial.

visual estudio 2008

Microsoft ha puesto como descarga una imagen virtualPc de visual studio 2008, con Tutoriales y Hands on Labs. eso si, caduca el 8 de marzo y esta en perfecto ingles, pero para aprender las novedades de .NET 3.5 y VS2008

el enlace, aquí : msdn

ACTUALIZACIÓN: (31-08-2008) Logicamente, esa imagen habrá caducado, pero siempre puedes bajarte las versiones de prueba de 90 días e imagenes de virtual PC: descargas

Instalación de Moodle en OpenSuse 10.3

Apunte rápido. Otro día lo extiendo (o no…)

Hoy he instalado moodle y el proceso ha sido bastante sencillo. Se pueden seguir las instrucciones de su web al pie de la letra, o hacerlo un poco a nuestro aire. Teniendo OpenSuse no puedo evitar usar YAST para instalar el paquete de moodle. Automáticamente instala las dependencias (Apache, PHP, MySQL…). Después hay que activar los servicios de apache y de mysql, con el YAST por ejemplo (YAST -> Sistema -> Editor de niveles de ejecución->activamos apache2 y mysql) .

Antes de configurar Moodle habrá que crear un usuario (“usmoodle” por ejemplo) con YAST (seguridad y usuarios -> Gestionar Usuarios) o consola. Tambien tendremos que crear la base de datos inicial.Como no tengo experiencia con MySQL he seguido a rajatabla la información de la web:

 # mysql -u root -p

  > CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

  > GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON moodle.*

          TO moodleuser@localhost IDENTIFIED BY 'yourpassword';

  > quit

  # mysqladmin -p reload

(poniendo el usuario y contraseña que corresponda claro.)

En teoría ahora bastaría con conectarnos con cualquier navegador a localhost/moodle/install.php y comenzaría la configuración de moodle. A mí al menos me salia una pantalla de error de conexión. esa pagina de instalación genera la pagina “config.php” pero en mi caso existia ya una pagina con ese nombre (vacía) y por eso fallaba. (eliminamos o renombramos la pagina que se encontrará en “/srv/www/moodle” y listo).
el resto como en la pagina oficial.

Visual Basic en Linux

Foto de Flickr
Por lo que leo , se ha presentado por fin un compilador serio de VB en el proyecto mono, lo cual nos permite abrir a otras plataformas (P.e. LINUX) las aplicaciones hechas en ese lenguaje (sobre todo si son aplicacionse web, porque logicamente, para escritorio,en vez de windows forms deberíamos usar GTK), o al menos, hacer posible q programadores 100% windows empiecen a ver mas posible la programación en Gnu/linux…

Wget para windows

Un antiguo alumno necesitaba desde una hoja de excel (…) poder descargar automaticamente una serie de PDFs de internet y guardarlos automaticamente en una carpeta X de su ordenador. Hasta ahora lo hacía con el metodo followHyperlink , pero eso lo unico que hace es abrir una ventana del navegador en la que mostraba el documento, y como eran varios los documentos, la tarea de abrirlos, esperar, guardar como… era bastante aburrida.

Al contarmelo, yo me acorde de wget, una instrucción muy socorrida en linux que tambien esta disponible en windows, así, el proceso se simplifica bastante, pues con la instrucción shell, llamamos a wget, pasandole los documentos a desgargar y listo.

por ejemplo, para descargar el documento “abc.txt” de la pagina http://www.algo.net y guardarlo en c:\datos\cde.txt, la intrucción sería:

shell “wget -O c:\datos\cde.txt http://www.algo.net/abc.txt”,vbhide

y aqui lo escribo por si le sirve a alguien mas…

ACTUALIZACIÓN :

si en vez de usar VBA, usas Visual Basic 2005, tienes un camino mucho mas sencillo y directo, gracias al espacio de nombres my , en concreto My.Computer.Network.DownloadFile,que haría la función de descargar un fichero, así , para el ejemplo anterior, bastaría :

My.Computer.Network.DownloadFile(“http://www.algo.net/abc.txt”, “C:\cde.txt”)


Enlaces en del.icio.us

Fotos en Flickr



patos0028

patos0027

patos0022

Más fotos

Posts Más Vistos


A %d blogueros les gusta esto: