Forçando a GPU NVIDIA programaticamente em laptops Optimus

Eu estou programando um jogo DirectX, e quando eu o executo em um laptop Optimus, o Intel GPU é usado, resultando em um desempenho horrível. Se eu forçar a GPU NVIDIA usando o menu de contexto ou renomeando meu executável para bf3.exe ou algum outro nome executável de jogo famoso, o desempenho é o esperado.
Obviamente, nenhuma delas é uma solução aceitável para quando eu tiver que redistribuir meu jogo, então existe uma maneira de forçar o laptop a usar a GPU NVIDIA?

Eu já tentei usar o DirectX para enumerar adaptadores (IDirect3D9 :: GetAdapterCount, IDirect3D9 :: GetAdapterIdentifier) ​​e não funciona: apenas 1 GPU está sendo reportado (aquele em uso).

questionAnswers(2)

yourAnswerToTheQuestion