次の問題があります。
サービスから、ユーザー セッションでアプリケーションを開始する必要があります。そのマシンはサーバーであるため、人間のユーザーがそのマシンにログオンすることはありません。起動されたアプリケーションには、セッション != 0 が必要です。
現在の「解決策」
マシンの起動時にスケジュールされたタスクを使用しました。そのタスクは、同じマシンでリモート デスクトップ ログオンを起動するアプリケーションを (もちろんセッション 0 で) 起動します。これにより、0 を超えるユーザー セッションが作成され、ユーザーの起動時に、発売。機能しますが、トリッキーすぎます。
最も賢い方法はありますか?ユーザーがログオンしていない可能性があるため、既にオンになっているユーザー セッションを再利用できることが重要です。
メジャーアップデート
多くの調査と部分的な成功の後、特定の目的のためにユーザーを作成することに関する SysAdmin の柔軟性の欠如のおかげで、セッション 0 で壊れた 3D 部分をレンダリングするために WPF の代わりにOpenGLを使用することにしました。驚くべきことに、予想よりも時間がかかりませんでした。 . この質問を参照として持つことは、サービスからViewport3Dをレンダリングしようとする他の人にとって役立つと思います。