Инициализировать Direct3d, когда вы не вошли в систему, или Автоматизировать вход в Windows

Мне нужно автоматизировать процесс сборки, который использует приложение, которое инициализирует Direct3d как часть его инициализации, даже если ему никогда не нужно создавать окно.

Я пытаюсь автоматизировать эту задачу с помощью планировщика заданий Windows (в XP) и настроил службу планировщика заданий, чтобы разрешить взаимодействие с рабочим столом.

Проблема, с которой я сталкиваюсь, заключается в том, что когда пользователь не полностью вошел в систему или если задача запускается, когда пользователь вошел в систему, но компьютер заблокирован, рассматриваемое приложение завершается сбоем с сообщением, что Direct3d не удалось инициализировать.

Кто-нибудь может придумать способ обойти это? Я пропустил какой-то параметр конфигурации (в Windows, планировщик задач или DirectX)? Есть ли что-то, что я могу сделать перед запуском этого приложения, что заставит Direct3d инициализироваться? Есть ли способ написать сценарий входа в Windows, чтобы пользователь мог войти в систему (или разблокировать компьютер) перед запуском приложения?

В конечном счете, я мог бы оставить пользователя в системе все время, а компьютер разблокировать, но, очевидно, это нежелательное решение.

Спасибо за любые идеи!


person Bill Brooks    schedule 04.09.2009    source источник


Ответы (1)


Я думаю, что единственный выбор, который у вас есть, — это использовать автологин и постоянно входить в систему под этим пользователем.

Единственный другой способ обойти это — использовать другой инструмент в процессе сборки, который не требует инициализации Direct3D.

person legalize    schedule 05.09.2009