1
어떤 이유로 서비스로 실행되는 프로그램에서 D3D9를 만들어야합니다. Direct3DCreate9Ex는 Windows 서비스로 실행될 때 D3DERR_NOTAVAILABLE (0x8876086a)을 반환합니다.
는 그러나 나는 다음과 같은 코드를D3DERR_NOTAVAILABLE
가지고 :
ATL::CComPtr<IDirect3D9Ex> d3d9 = nullptr;
HRESULT hr = ::Direct3DCreate9Ex(D3D_SDK_VERSION, &d3d9);
을 그리고 그것은 서비스에서 실행 있지 않다면 그것은 작동합니다.
제어판에서 Allow service to interact with desktop
을 확인하여 성공한 사람을 보았지만 제대로 작동하지 않습니다.
언급해야 할 설정이 있습니까?
그것은 나에게 특히 놀라운 일이되지 않을 것를 참조 어떤 경우에는, 당신은 Windows 서비스에서 NULL 장치와 아마도 WARP 장치,하지만 다이렉트 3D GPU 액세스를 만들 수 있습니다 사용할 수 없습니다이 경우 불가능하다. D3D9를 사용하여 무엇을하려고합니까? (서비스의 어떤 것도 표시 할 수 없기 때문에 아무 것도 보이지 않습니다.) –
디코딩 된 프레임에 대한 비디오 분석을하고 싶습니다. 화면에 정보를 표시 할 필요가 없습니다. – xeonchen