2011-01-03 1 views
0

이전에 Windows Media Player의 출력을 C#의 Picturebox로 리디렉션하는 코드 샘플을 보았습니다. 다른 Win32 응용 프로그램에서이 작업을 수행하는 데 관심이 있습니다. 내가 그 결과물을 리디렉션하고 싶은 프로세스를 처리 할 수 ​​있다는 사실을 고려할 때, 어떻게하면 목표를 달성 할 수 있을까요?Win32 응용 프로그램의 출력을 그림 상자로 리디렉션 할 수 있습니까?

user32.dll의 ShowWindow 메서드를 사용하여 프로세스의 창을 최소화/최대화 할 수 있으므로 문제가 해결 될 것으로 예상됩니다.

감사합니다.

답변

1

나는 Windows 용 데스크톱 관리자 (Windows Vista에서 도입 된 기능)에 대한 책을 읽은 게 좋을 것 : http://msdn.microsoft.com/en-us/library/aa969540(v=VS.85).aspx

나는 그것이 당신이 찾는 기능을 가지고 있다고 생각합니다.

HWND 두 개가 붙어있는 DwmRegisterThumbnail 함수에 대해 읽으므로 두 번째 창에도 하나의 창을 그립니다. 이 방법을 사용하면 PictureBox.Handle 속성에서 얻은 HWND에 Windows Media Player를 그릴 수 있습니다.

또한이 항목에 대한 많은 질문과 답변이 StackOverflow에 있습니다. 검색어 "dwm"을 사용하면 다음과 같은 결과를 얻을 수 있습니다. https://stackoverflow.com/search?q=dwm

+0

불행히도 Windows XP 응용 프로그램에이 기능이 필요합니다. 미리 프로세스의 HWND를 만들 수 있습니까? 아니면 Windows에서 할당 한 것입니까? –