|
임펠리테리입니다.
에러메시지의 경우 보통 stdout이 아니라 stderr로 출력을 합니다.
디폴트로 이 두개 장치는 디스플레이를 가리키지만, 표준 출력의 리다이렉션은 stdout만을 리다이렉트하는 걸로 기억합니다.
그러므로.. 일반적인 리다이렉션으로는 방법이 없습니다.
하지만.. 다른 방법이 있을 겁니다.
win32 api에서, SetStdHandle() 함수를 쓰면, 표준 입력/출력/에러를 위한 파일을 지정할 수 있습니다.
그런데 이건 프로그램 소스 내에서만 가능하니까..
제 기억으로는 다른 프로그램을 실행할 때 CreateProcess() 함수의 인자를 조정하면 현재 사용하고 있는 콘솔 관련 표준 입력/출력/에러를 실행되는 프로그램 쪽으로 상속시킬 수 있을 겁니다.
제라툴님은 api에 능숙하실테니 직접 해보시지요.
그럼 이만...
제라툴 님이 쓰신 글 :
: 저도 그렇게 알고 있습니다만..
: 직접 해보시면 알겠지만.. 그냥 에러없는 프로그램의 출력은
: 리다이렉션이 가능하나..
: 에러가 발생했을시에는 에러 메시지에 대한 리다이렉션이 안되더군요..
:
: ---- 아름다운 청년 제라툴 ----
:
|