在NVIDIA显卡上的Visual Studio中运行程序调试的任何方法吗?

时间:2015-05-04 07:04:35

标签: visual-studio debugging opengl visual-studio-2013

我的笔记本电脑配有集成的英特尔和NVIDIA显卡,我想在NVIDIA显卡的Visual Studio 2013社区版中运行我的程序(用C#编写)调试,因为我的程序广泛适用于OpenGL和Intel卡而不是支持最新的OpenGL功能。但默认设置程序在Intel卡上运行。

我尝试在NVIDIA设置中为我的程序更改默认图形卡,但看起来重置了程序重新编译设置。

那么,还有其他简单的方法可以在NVIDIA显卡上运行程序吗?也许有特殊的命令行参数或类似的东西?

5 个答案:

答案 0 :(得分:8)

最简单的方法是在程序中的某处添加这段代码:

extern "C" {
    _declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001;
}

有关详细信息,请查看此处:http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf

答案 1 :(得分:1)

最简单的可能是将程序编译成.NET DLL并从C ++ / CLI编写的可执行文件中调用Main函数,该可执行文件导出{J}在另一个答案中提到的NvOptimusEnablement变量。

答案 2 :(得分:1)

我当前使用Visual Studio 2017专业版,并且我还需要使用OpenGL。就像@Omich所说的那样,在NVIDIA设置中更改VS2017的默认图形卡是行不通的。最后,我尝试右键单击“ Visual Studio 2017”快捷方式(或devenv.exe,结果相同),然后选择选项“ 使用图形处理器运行->高性能NVIDIA处理器” ”,它就可以使用。这种方法很简单,但似乎有点琐事,因为每次启动时都必须右键单击VS图标。

答案 3 :(得分:1)

您可以使用NVidia控制面板应用程序。我相信在安装NVidia驱动程序时会安装该驱动程序,但是我不确定。启动它,然后:

选择“管理3D设置->程序设置”标签

  1. 选择要自定义的程序:单击“添加”按钮 找到可执行文件,然后单击“添加所选程序”
  2. 选择首选图形处理器... 选择您的NVidia处理器

即使在使用Visual Studio调试器运行exe时,它也会使用所选的图形处理器。

答案 4 :(得分:0)

经过几个小时的搜索,我在http://drivenbynostalgia.com/files/SOP.cs

找到了解决方案

我想这比将整个项目移动到dll并使用C ++ / CLI启动器更好。