Grandamakulo   24-02-2025, 19:47
#1
Pues eso, compañeros, la pregunta del asunto: ¿Cómo detener un proceso del terminal con «Control+C»?
Muchas gracias de antemano.
Última modificación: 25-02-2025, 14:27 por Grandamakulo.

En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
alberto-moyano   24-02-2025, 22:37
#2
Hola, yo uso el código que pongo a continuación dentro de un módulo (junto con otras funciones) para asegurarme que en la salida del programa no queden residuos, puedes asignar estas ordenes a un botón o a un menú con un acceso rápido.

Saludos

Código:
  ' Intenta detener el proceso de Bash
  Try FMain.$Bash.Kill
  ' Espera un breve período para permitir que el proceso termine
  Wait 0.1
  ' Verifica si el proceso aún está activo
  If FMain.$Bash.State = Process.Running Then
    ' Si el proceso sigue en ejecución, fuerza su terminación
    Try FMain.$Bash.Terminate
    Wait 0.1
  Endif
  ' Si el proceso aún no ha terminado, muestra un mensaje de advertencia
  If FMain.$Bash.State = Process.Running Then
    Message.Warning("El proceso no pudo ser detenido.")
  Endif
Shordi   25-02-2025, 11:46
#3
Pues igual que le envías un comando con el método input. Construye la cadena con algo así como key["Ctrl"]+key["C"] (Estoy escribiendo con el móvil y de memoria, o sea que seguro que no es así la cadena dichosa) pero eso debería funcionar.

Saludos

No podemos regresar
Grandamakulo   25-02-2025, 14:14
#4
Hola:
@alberto-moyano: me va perfecto para terminar bien y cerrar el programa, pero no para continuar usando el terminal.
@Shordi: una vez que tengo montado el código de tecla, ¿cómo lo asigno a una cadena válida para el Terminal.Input()?
Gracias a ambos.

---

Vale, lo encontré. La cadena a enviar a .Input  es String.Chr(3). Así de simple, jajaja.
Última modificación: 25-02-2025, 14:27 por Grandamakulo.

En un lugar de La Mancha de cuyo nombre me acuerdo perfectamente...
  
Usuarios navegando en este tema: 1 invitado(s)
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.