2010-08-20 6 views
2

서비스로 실행되는 WPF 응용 프로그램이 있고 2D 그래픽 요소가 렌더링되어 jpg 스냅 샷을 찍습니다. 이 모든 것은 윈도우 또는 보이는 컨트롤없이 발생합니다.그래픽 카드가없는 WPF 렌더링

일반적으로 응용 프로그램은 매우 엉터리 비디오 어댑터가있는 서버에서 실행됩니다. 이것이 응용 프로그램의 성능에 부정적인 영향을 줍니까?

동일한 컴퓨터에서 몇 가지 직접 비교 테스트를 수행 할 수 있도록 렌더링을 위해 비디오 어댑터를 무시하도록 WPF/.NET에 지시 할 수있는 방법이 있습니까?

+0

클라이언트 용 WPF 또는 웹용 WPF입니까? – ChrisBD

+0

Windows 서비스로 실행되는 "완전한"WPF 클라이언트 응용 프로그램입니다. 추가 조사에서 서비스로 실행될 때 항상 렌더링 계층 0을 얻는 것으로 나타났습니다. 응용 프로그램이 "일반"Windows 응용 프로그램 (보이는 Window)과 같이 실행되면 렌더링 계층 3이됩니다. 질문이됩니다. 비디오 어댑터가 전혀 사용되지 않는 것처럼 보입니다. 사용 방법이 있습니까? –

답변

2

답변을 찾았습니다. 나중에 참조 용 :

Session0 격리는 Windows Vista/2008에서 시작하는 서비스에서 하드웨어 가속을 사용할 수 없게합니다 (WPF뿐만 아니라 다른 것에서도). 여기에서 자세한 내용을 읽어 볼 수 있습니다 : http://www.microsoft.com/whdc/system/sysinternals/session0changes.mspx

XP 또는 2003을 실행하는 경우 비디오 드라이버를로드하는 대화 형 세션에서 서비스를 실행할 수 있습니다. "서비스가 데스크톱과 상호 작용하도록 허용"옵션을 선택하면 하드웨어 가속이 사용됩니다 (하드웨어가 지원하는 경우 2 단계 렌더링), 그렇지 않으면 렌더링 계층 0 (소프트웨어 전용)이됩니다.

원격 데스크톱과 연결하고 서비스를 시작하는 경우, 서비스가 해당 세션을 사용합니다 (가속되지 않는) 및 계층을 렌더링에서 실행됩니다 조심하세요 0

(분명이 의미 Vista에서/7/2008 이후에 어떤 결과도없는 엉터리 비디오 어댑터로 서비스를 실행할 수 있습니다.