Я написал демо-приложение https://docs.microsoft.com/en-us/windows/desktop/api/d3d9/nf-d3d9-idirect3ddevice9-getfrontbufferdata сделать снимок экрана моего рабочего стола. Моя проблема в том, что когда я использую APImonitor, я вижу, что когда я делаю снимок экрана, мое приложение вызывает bitBlt . Так может кто-нибудь сказать мне, если Direct3D getfrontbufferdata реализован с использованием bitBlt? Есть ли зависимость между gidi32.dll и directX? Спасибо,
Похоже, что DirectX может выбрать использование bitBlt, в зависимости от ограничений графического процессора, источник текстуры /destination/format/size.
Возможно, вам следует прочитать это:
Самый быстрый способ захвата экрана в Windows