Iniciar determinada ferramenta de linha de comando sempre minimizada

0

Estou usando o Spyder como um IDE do Python que chama um compilador externo (NVCC) durante a execução. Este compilador é aberto em uma janela de linha de comando externa.

Existe uma maneira de criar um arquivo em lotes ou algo semelhante que eu possa colocar no meio que transmite todos os comandos de e para o nvcc.exe, mas inicia o processo em segundo plano? O nvcc é chamado de hardcoded com extensão (então eu não posso usar o .bat)

Eu já tentei definir um link simbólico para um .lnk que está definido como 'minimzed', mas isso não funcionou.

    
por skjerns 06.03.2017 / 12:04

1 resposta

0

Atualmente, parece não haver uma solução fácil, mas encontrei uma solução alternativa usando o seguinte código Python:

import win32gui
import win32com.client
import time
prev_hwnd = win32gui.GetForegroundWindow()
while True:
    toplist = []
    winlist = []
    hwnd = win32gui.GetForegroundWindow()
    title =  win32gui.GetWindowText(hwnd)
    if 'nvcc.exe' in title.lower():
        shell = win32com.client.Dispatch("WScript.Shell")
        shell.SendKeys('%')
        win32gui.SetForegroundWindow(prev_hwnd)
        print('Minimized nvcc.exe')
    else:
        prev_hwnd = hwnd

    time.sleep(0.001)
    
por 08.03.2017 / 15:33