2011-01-12 5 views
2

내 코드에서 배치 명령을 사용하여 파일을 대상에 복사하고 싶습니다.콘솔을 표시하지 않고 _wsystem을 호출하는 방법은 무엇입니까?

szCommand.Format(_T("copy \"%s\" \"%s\""), szOrg, szTargetFile); 
    _wsystem(szCommand); 

그러나 _wsystem이 호출 될 때마다 콘솔 창에 프롬프트가 표시되며 이는 매우 불쾌합니다.

콘솔 창을 표시하지 않고 _wsystem을 호출하는 방법이 있습니까? 또는 다른 대안?

+0

도랑 콘솔 응용 프로그램과 GUI 응용 프로그램에서이 작업을 수행. 참조 : http://flipcode.com/archives/Win32_ConsoleWindowed_Tip.shtml –

+1

모든 답변에 감사드립니다. 마침내 CopyFile WIN32 기능을 선택했습니다. – wengseng

답변

6

새 프로그램이 나타나는 방식을 제어하려면 CreateProcess을 사용하십시오. 그런 다음 CREATE_NO_WINDOWprocess-creation flag을 사용하여 콘솔 프로그램 창을 숨길 수 있습니다.

하지만 한 곳에서 다른 곳으로 파일을 복사하려면 외부 프로그램을 건너 뛰고 CopyFile으로 전화하십시오.

+1

멋진 그래픽 진행 상황이 필요한 경우 [FO_COPY]로 ['SHFileOperation'] (http://msdn.microsoft.com/en-us/library/bb762164.aspx)를 실행하십시오. – ephemient

0

창이 최소화 되어도 괜찮습니까? this을 참조하십시오.

관련 문제