Adjunte una aplicación de consola en ejecución a una nueva instancia de ConEmu

Adjunte una aplicación de consola en ejecución a una nueva instancia de ConEmu

Tengo una aplicación de consola ya iniciada, en Windows XP. Quiero adjuntarlo a un emulador de consola diferente, comoConsola2oConEmu. Esto esposible con ConEmu, y funciona si ejecuto ConEmu, luego uso la entrada del menú "Adjuntar a" y selecciono mi aplicación de consola en la lista.

Ahora estoy intentando automatizar esto. Quiero poder enfocar la ventana de la aplicación de la consola, presionar una tecla y adjuntarla a una nueva instancia de ConEmu. Intenté escribir unAutoHotKeymacro para adjuntar la aplicación de consola actualmente enfocada cuando presiono Win+ A, pero no puedo entender cómo usarla ConEmuC. Aquí está mi intento:

#IfWinActive, ahk_class ConsoleWindowClass
#a::
  WinGet, app_pid, PID
  Run c:\opt\ConEmu-120704\ConEmu.exe /detached, , , conemu_pid
  Run c:\opt\ConEmu-120704\ConEmu\ConEmuC.exe /ATTACH /PID=%app_pid%
  Return

Todo lo que aparece es la siguiente ventana emergente de error:

Attach to GUI was requested, but there is no console processes!

c:\opt\ConEmu-120704\ConEmu\ConEmuC.exe /ATTACH /PID=7104

Sin embargo, si uso la entrada del menú "Adjuntar a" en la instancia de ConEmu, la aplicación de la consola se adjunta. Necesito marcar la casilla de verificación "modo alternativo"introducido en la versión 120704, si eso es relevante.

¿Cómo uso ConEmuC(o cualquier otro método) para adjuntar una aplicación de consola existente a una nueva instancia de ConEmu? Aún mejor, ¿cómo adjunto una instancia existente (si quiero una instancia nueva, puedo crearla de antemano)? ¿Y cómo especifico el modo alternativo?

Respuesta1

Prueba lo siguiente

#IfWinActive, ahk_class ConsoleWindowClass
#a::
  WinGet, app_pid, PID
  Run c:\opt\ConEmu-120704\ConEmu\ConEmuC.exe /ATTACH /CONPID=%app_pid%
  Return

Modo alternativo: /ATTACH /CONPID=<pid>.

Empezar ConEmu.exe /detachedes innecesario. La GUI se iniciará automáticamente si no se encuentra.

UPD. Compilación 120705. Si desea iniciar incondicionalmente una nueva ventana de ConEmu, puede agregar /GHWND=NEWargumentos ConEmuC.

UPD 2. Por otro lado, ¿puede ser que no necesites hacer Attachnada? HayTerminal predeterminadocaracterística que le permite ejecutar ConEmu automáticamente "en lugar" del terminal estándar de Windows cuando ejecuta cualquier aplicación de consola.

información relacionada