2009-04-04 5 views
0

프로그램 내에서 이러한 호출을 어떻게 시뮬레이트 할 수 있습니까? 좋아요. 모든 활성 연결을 찾고 싶습니다. 그래서 netstat -a를 사용하고 싶습니다. 글자 그대로 창을 열지 않고 어떻게 사용할 수 있습니까?프로그래밍 방식으로 C에서 CMD 사용

답변

6

출력을 리디렉션하는 CreateProcess를 사용하십시오.

호출 응용 프로그램이 Windows 응용 프로그램이 아닌 경우에는 콘솔 창에 문제가 없습니다 (콘솔 프로그래밍은 기본적으로 부모 콘솔에 있기 때문에).

호출 응용 프로그램이 Windows 응용 프로그램 인 경우 CreateProcess에 전달 된 올바른 옵션을 생성 할 콘솔 창을 숨김으로 설정합니다.

1

사용할 수있는 라이브러리 기능은 system()입니다. C89부터 표준 C 함수이기 때문에 Windows도 가지고 있다고 생각합니다.

0

'시작'명령의 "/ B"옵션을 사용해야합니다.

cmd를/"제목"시작 C/B에서 netstat -i

내가 터지는 콘솔을 가정하고있어 주요 문제, 하고 데이터를 수집하면 전략이다.

0

시스템()을 사용하지 마십시오 (전문가가 아니며 엉터리)
Win32 net apis를 사용하십시오.
netstat의 소스 코드를 참조하십시오.

관련 문제