2010-07-11 8 views
3

Windows에서 콘솔 앱에 포커스를 설정할 수 있습니까? SetFocus는 유망 해 보이지만 HWND가 필요하며 콘솔 앱에도 HWND가 있는지 여부는 알 수 없습니다.Windows에서 콘솔에 포커스를 설정 하시겠습니까?

+0

콘솔 응용 프로그램 자체 또는 다른 응용 프로그램 내부에서이 작업을 수행 할 방법을 찾고 있습니까? –

답변

2

GetConsoleWindow 기능을 사용하십시오.

+0

그건 나를 위해 NULL을 반환합니다. 내가 실제로 AllocConsole 또는 뭔가 Windows 애플 리케이션을위한 콘솔을 만드는 경우 작동하는 것 같아요. – Steven

+0

윈도우 콘솔 세션에서 실행중인 경우 유효한 HWND를 가져와야합니다. 서비스 로그인 세션에있는 경우 연결된 창이 없습니다. 그리고 Windows는'/ SUBSYSTEM : CONSOLE' 옵션 (PE 헤더에 플래그로 저장 됨)과 연결된 프로세스를 시작할 때마다 자동으로'AllocConsole' 또는'AttachConsole'을 호출합니다. –

+0

사실'GetConsoleWindow'가 작동합니다. 그러나 SetFocus는 NULL을 반환하고 GetLastError는 ERROR_ACCESS_DENIED를 반환합니다. 어떤 아이디어? – Steven

관련 문제