Erzwingen der programmgesteuerten NVIDIA-GPU in Optimus-Laptops

Ich programmiere ein DirectX-Spiel, und wenn ich es auf einem Optimus-Laptop ausführe, wird die Intel-GPU verwendet, was zu einer schrecklichen Leistung führt. Wenn ich die NVIDIA-GPU über das Kontextmenü erzwinge oder meine ausführbare Datei in bf3.exe oder einen anderen bekannten Namen für die ausführbare Spieldatei umbenenne, ist die Leistung erwartungsgemäß.
Natürlich ist auch keine Lösung akzeptabel, wenn ich mein Spiel neu verteilen muss. Gibt es also eine Möglichkeit, den Laptop programmgesteuert zur Verwendung der NVIDIA-GPU zu zwingen?

Ich habe bereits versucht, DirectX zum Auflisten von Adaptern zu verwenden (IDirect3D9 :: GetAdapterCount, IDirect3D9 :: GetAdapterIdentifier), und es funktioniert nicht: Es wird nur 1 GPU gemeldet (die verwendete).

Antworten auf die Frage(2)

Ihre Antwort auf die Frage