Sección de código fuente Visual basic


Código fuente para impedir la ejecución de procesos y ejecutables utilizando Wmi



 

Ejemplo que utiliza Windows management instrumentation ( Wmi ) para restringir e impedir la ejecución de programas y procesos, como si fuese un bloqueador de programas.

 

El mismo permite seleccionar los programas o archivos ejecutables que no queremos que se ejecuten, o que se cierren en un determinado momento.

Para hacer esto se agregan a un control ListBox las rutas de los archivos ejecutables, y un timer chequea los procesos que se están ejecutando en el sistema operativo.

Si el proceso o programa que se intenta ejecutar , está incuído en la lista (en un ListBox de los programas que queremos matar), se cierra.

Como se mencionó anteriormente, para obtener los procesos abiertos y cerrarlos, se utiliza Wmi Windows Management Instrumentation . , esto también y obviamente se puede hacer con el Api de Windows (que es un poco mas de código pero es mejor).

Por si querés ojear en la sección Api hay unos ejemplos de como listar y cerrar procesos.

 

vista previa del formulario para agregar la lista de ejecutables que se cerrarán con wmi

 

 

Descripción del programa

Como se ve en el ListBox, mediante el botón "Agregar programa", añadimos los que queremos a la lista . Los que están chequeados son los que se cerrarán si se intentan abrir.

 

Vista previa del archivo log

 

 

Nota: El programa tiene un botón para ocultar el formulario. Para poder reestablecerlo, es decir volver a hacerlo visible, hay que presionar las teclas Shift+F9.

Pasos para crear el programa:

Agregar los siguientes controles en el formulario:

 

Importante: Los controles se acomodan solos y se ajustan automatiacmente, es decir desparramalos por el formulario en cualquier parte (te aviso, para que no te matés de gusto acomodandolos)

Otra cosa importante es que al cerrar el programa, cerrarlo con el botón "salir" y no con el Stop del IDE de vb mientras se prueba.

Por último una cosa para agregarle, que me olvidé de hacerle y que me estoy acordando ahora, es una opción para que al reiniciar la pc se ejecute el programa en modo oculto. Esto no es nada complicado, es cuestión de colocar una opción en el programa que escriba un valor en el registro (de tipo boolean) y que de acuerdo a ese valor antes de cargarse (en el Inicialize o en el Load) se haga visible o no el formulario de acuerdo a ese valor leído.


Pegar el siguiente código en el formulario

 

Nota: para poder usar una opción que pueda volver a hacer visible la plicación mediante una combinaciónde teclas, sin tener que usar el api GetAsyncKeyState " que requiere un timer ", podés ver este ejemplo que usa la función RegisterHotKey. Combinación de teclas con el api RegisterHotKey




Buscar en Recursos vb