Modificando el código fuente

Modificando el código fuente

Tenemos una aplicación VB6 heredada que envía informes por correo electrónico automáticamente. Se ejecuta desde una tarea programada en un servidor. Ocasionalmente, un usuario ejecutará el archivo ejecutable; está en una carpeta en la que no podemos bloquearlo y debe permanecer en esa carpeta por razones demasiado complicadas para explicarlas aquí. ¿Hay alguna manera de evitar que los usuarios ejecuten el archivo ejecutable y al mismo tiempo dejar que se ejecute desde la tarea programada? Puedo modificar el código fuente del exe, así que esa es una opción si alguien puede ayudarme a descubrir cómo hacerlo. O si hay una manera de establecer permisos en el archivo ejecutable para que solo el Programador de tareas (o nuestro equipo de 3 desarrolladores) pueda ejecutarlo, eso también funcionaría.

Respuesta1

Aquí hay dos opciones.

Modificando el código fuente

Es posible modificar el código fuente. Todo lo que necesita hacer es asegurarse de que el programa requiera un parámetro. Si no está presente, no pasa nada. Un usuario hará doble clic en el archivo ejecutable, que no envía ningún parámetro. Incluso puedes crear una ventana emergente que diga: Este programa debería programarse o algo así.

Esto se puede hacer usandoObtenerCommandlineArgs.

La desventaja de esto es que si por alguna razón alguien olvida el argumento de la línea de comando secreta, en algún momento la gente puede dejar de usarlo (por ejemplo, si deja la empresa, TI lo realiza una empresa diferente, etc.)

Establecer permisos de acceso específicos en el archivo .exe

Otra opción es simplemente establecer permisos en el archivo .exe. Puede hacer que solo los administradores puedan abrir el archivo o negar el resto. Denegar tiene prioridad sobre permitir permisos, por lo que es posible que también esté denegando su acceso administrativo. Además, un usuario con suficientes conocimientos y derechos puede deshacer esto y luego iniciar el ejecutable. Además, si copian el ejecutable localmente, pueden eliminar los derechos y luego iniciar el programa.

información relacionada