시스템 호출에서 콘솔 창 숨기기
os.system() 또는 subprocess.call()과 같은 함수를 사용하여 시스템 명령을 실행하는 경우 , 콘솔 창이 잠시 나타날 수 있습니다. 이는 특정 상황에서는 바람직하지 않을 수 있습니다.
이를 완화하기 위해 하위 프로세스의 STARTUPINFO 프로세스는 콘솔 창을 숨기는 옵션을 제공합니다. 방법은 다음과 같습니다.
import subprocess si = subprocess.STARTUPINFO() si.dwFlags |= subprocess.STARTF_USESHOWWINDOW #si.wShowWindow = subprocess.SW_HIDE # default subprocess.call('taskkill /F /IM exename.exe', startupinfo=si)
또는 생성 플래그를 사용하여 창 생성을 비활성화할 수 있습니다.
subprocess.call('taskkill /F /IM exename.exe', creationflags=subprocess.CREATE_NO_WINDOW)
위 방법은 콘솔 창 생성을 억제하지만 프로세스는 여전히 콘솔 I에 대한 표준 핸들을 보유합니다. /O.
콘솔을 완전히 제거하려면 DETACHED_PROCESS를 사용하세요. 플래그:
subprocess.call('taskkill /F /IM exename.exe', creationflags=subprocess.DETACHED_PROCESS)
이 경우 하위의 표준 핸들은 무효화되지만 열려 있는 다른 파일이나 파이프로 리디렉션할 수 있습니다.
위 내용은 Python에서 시스템 호출을 실행할 때 콘솔 창을 숨기려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!