Я работаю над устаревшим кодом Windows C++, пытаясь улучшить его производительность и исправить некоторые ошибки, которые трудно воспроизвести, но предположительно они связаны с производительностью потоков.
Не просите меня предоставить код. Все, что я скажу, это то, что он использует функцию DirectDrawCreateEx() и передает NULL в качестве первого параметра. В какой-то момент этот код был перенесен в систему с несколькими мониторами, и если вы посмотрите описание функции Microsoft, в самом низу вы увидите такое примечание:
На компьютерах с несколькими мониторами, если вы укажете NULL для lpGUID, объект DirectDraw запускается в режиме эмуляции, когда установлен нормальный уровень сотрудничества. Чтобы использовать аппаратное ускорение на этих компьютерах, укажите GUID устройства.
Конечно, примеров кода нет.
Я хочу придумать функцию, которая выходит и получает GUID основного видеоадаптера, чтобы я мог передать его в функцию DirectDrawCreateEx() вместо NULL в надежде получить аппаратное ускорение для работает.
Я перепробовал кучу вещей и пришел к выводу, что либо никто раньше не сталкивался с этой проблемой, либо ИИ дает неверные предложения, которые в большинстве случаев не работают.
Есть ли у кого-нибудь функция для получения GUID основного видеоадаптера?
Подробнее здесь: https://stackoverflow.com/questions/796 ... awcreateex