Por que alguns programas não podem receber a saída de processos filhos?

0

Alguns programas não exibem a saída de alguns processos filhos. Como você pode ver ,

Eu tentei executar php --version em três utilitários de console: Git Bash (MinGw), linha de comando nativa do Windows 8 e terminal Cygwin.

Os dois primeiros programas retornam informações sobre a versão do PHP, mas o Cygwin não imprime nenhuma saída. No entanto, o Cygwin não é o único programa que não imprime a saída do console de processos filhos. Por exemplo, qmake (a parte do Qt Framework) também não retorna nada no Cygwin ao executar qmake -query . Como conseqüência, não posso usar o Qt Creator no meu PC, porque o Qt Creator não pode analisar a saída de qmake .

Alguma idéia de como resolver esse problema? Atualmente eu uso o Windows 8 x64, mas esse problema também ocorreu quando eu tinha o Windows 7 x64 instalado no meu PC.

    
por Serg 10.01.2014 / 20:38

2 respostas

0

Você está misturando termos!

A primeira captura de tela é igual à segunda - ela é um console padrão do Windows.

A terceira tela, na verdade, é um emulador do mintty, mas não um console real. Veja "min" em seu nome? Uma enorme quantidade de aplicativos não pode ser executada de forma alguma!

Eu acredito que a solução é usar o console apropriado. Além disso, você pode tentar ConEmu como terminal avançado do Windows, é "tudo propor e full-featured" (eu sou o autor).

Quanto ao criador do QT ... Tente usar o ProcessMonitor para encontrar o problema. Sim, isso não é rápido e fácil, mas você pode tentar. Se estiver trabalhando em outro PC, você poderá comparar seus registros. Além disso, pode haver alguns ganchos globais de instalação de ferramenta de terceiros, o que interfere no comportamento normal da tubulação. Pode ser outra coisa ... Vírus ou antivírus, não?

    
por 11.01.2014 / 10:19
0

Como o usuário Maximus sugeriu aqui antes, o motivo era o software antivírus. Depois que adicionei o Cygwin e o Qt à lista de exceções, os dois programas começaram a funcionar corretamente.

    
por 19.11.2014 / 19:25