wglMakeCurrent使用DetourCreateProcessWithDll失败

时间:2012-04-20 21:10:21

标签: opengl glut detours glutcreatewindow

我在Visual Studio 2010中使用DetourCreateProcesswithDLL,并在为glut演示程序创建abgr.exe演示应用程序的过程时为Opengl32.dll,glu32.dll和glut32.dll提供替换dll。

这样我就拦截了Opengl32,glu32,glut32库。然后api从系统文件夹或通常的dll调用相应的apis。

这些dll在各自的库中定义了所有api。

问题是wglMakeCurrent在Win 7 x64位的NVidia GTX480上返回0或者使用glut demo app(如abgr.exe)失败。它也不能与其他演示应用程序一起使用。

如果我更改了abgr.exe的兼容性或调用DetourCreateProcesswithDLL的GLIntercept可执行文件,它确实有效。即右键单击exe - >更改属性 - > Compatilibity - >选中256色运行。

然而,这看起来像一个解决方案,显示器看起来并不那么好。如何使用而无需这样做。如何为wglMakeCurrent获得良好的价值。 从wglMakeCurrent内调用glutCreateWindow

这不是AMD Fusion GPU的问题。有wglMakeCurrent并返回一个好的值。问题仅出在NVIDIA GTX 480上。有谁知道如何解决这个问题?我已更新驱动程序并在NVIDIA控制面板帮助 - >关于

上显示版本4.3.790.0

wglCreateContext返回0x00010000

0 个答案:

没有答案