【问题标题】:Unhandled Exception at igd10iumd32.dlligd10iumd32.dll 中未处理的异常
【发布时间】:2015-08-04 00:17:30
【问题描述】:

在 Visual Studio 中处理我的项目时,我似乎遇到了一个与图形相关的未处理异常。 由于 Windows 10,我最近更新了图形驱动程序。似乎从那时起这些问题就发生了。它不在我的代码上,因为我一直在修改它,试图修复它一整天都无济于事。这是一个毁灭性的问题。 我最终降级了我的英特尔图形驱动程序以试图解决这个问题,但是没有问题。 我做错了什么?

这是我得到的代码:

Unhandled exception at 0x657F994A (igd10iumd32.dll) in Game.exe: 0xC0000005: Access violation reading location 0x00000158.

【问题讨论】:

    标签: c++ windows exception visual-studio-2013


    【解决方案1】:

    显然我没有足够的声誉来发表评论,所以我会发布这个作为答案。

    我也有同样的问题。我还从 Windows 7 升级到了 10。我的笔记本电脑有集成显卡和专用显卡,但首选显卡是 NVIDIA GeForce 710m。我以为我只需要升级我的驱动程序,但是将我的驱动程序从340.52升级到最新的(353.62)后,我的问题仍然存在。

    下面是一个示例“hello world”程序,它可以在我的机器上重现该程序。这似乎是随机的 - 它可能发生在第 2 个循环或第 279 个循环中。

    #include "sdl/SDL.h"
    #include "sdl/SDL_syswm.h"
    int main( int argc, char*argv[] )
    {
      if( SDL_Init( SDL_INIT_VIDEO ) < 0 )
        return 1;
    
      SDL_GL_SetAttribute( SDL_GL_CONTEXT_MAJOR_VERSION, 4 );
      SDL_GL_SetAttribute( SDL_GL_CONTEXT_MINOR_VERSION, 4 );
      SDL_GL_SetAttribute( SDL_GL_DOUBLEBUFFER, 1 );
      SDL_GL_SetAttribute( SDL_GL_DEPTH_SIZE, 24 );
      SDL_GL_SetAttribute( SDL_GL_FRAMEBUFFER_SRGB_CAPABLE, 0 );
    
      SDL_Window* sdlWindow = SDL_CreateWindow(
        "tac",
        30, 60,
        1366, 768,
        SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN );
      if( !sdlWindow )
        return 1;
    
      SDL_GLContext mainContext = SDL_GL_CreateContext( sdlWindow );
      if( !mainContext )
        return 1;
    
      while( true )
      {
        SDL_Event mySDLevent;
        while( SDL_PollEvent( &mySDLevent ) )
        {
        }
        SDL_GL_SwapWindow( sdlWindow ); // <-- it crashes here
      }
    
      SDL_GL_DeleteContext( mainContext );
      SDL_DestroyWindow( sdlWindow );
      SDL_Quit();
      return 0;
    }
    

    MyGame.exe 中 0x5ECB9958 (igd10iumd32.dll) 的第一次机会异常:0xC0000005:访问冲突写入位置 0x77007B85。 tacMain.exe 中 0x5ECB9958 (igd10iumd32.dll) 处未处理的异常:0xC0000005:访问冲突写入位置 0x77007B85。

    我的调用堆栈来自这些 dll

    igd10iumd32.dll
    nvoglv32.dll
    kernel32.dll
    ntdll.dll
    

    所以我认为这是驱动程序问题?...

    【讨论】:

    • 我在驱动程序详细信息下发现 igd10iumd32.dll 作为我的 Intel HD Graphics 4000 显卡驱动程序(从设备管理器 -> 显示适配器)的一部分。 puu.sh/jpSoH/adba43dcd3.png 但是,我的 intel 驱动程序版本已经是最新的 puu.sh/jpSxI/f6efa7f759.png 但是 Windows 10 的 beta 驱动程序有希望 puu.sh/jpSAX/7180c7ff1c.png
    • 正是我的情况。我真的很感谢你的回答。不知何故,它开始自行工作。我开始来回切换驱动程序,然后它工作了,经过很长时间无所事事地等待。就像,屏幕变黑,然后又恢复正常,它又开始工作了。很奇怪,但我不得不回滚到旧版本的驱动程序。是的,这肯定是英特尔显卡驱动程序的问题。不知道你是否已经为你解决了。你有吗?
    • 在切换驱动程序(甚至用微软的基本图形驱动器替换英特尔的驱动程序)时,它似乎开始对游戏中的处理进行超频。这太疯狂了,特别是如果我没有帧率锁定。我暂时禁用了它,它像疯了一样飞快。我以为我在使用超级计算机什么的,我什至没有夸大其词。无论如何,现在一切似乎都很好,不知何故。
    • 我不知道如何找到 Microsoft 基本显示驱动程序。我在英特尔论坛(software.intel.com/en-us/comment/1834334)上发了一个帖子,他们将我链接到不支持我的 gpu 的驱动程序(英特尔 HD 4200,而不是 HD 4000),所以我仍在寻找解决问题的方法.
    • 要找到 Microsoft 基本显示适配器,请转到计算机中的设备管理器,然后转到显示驱动程序或其他名称。在那里,您可以选择 Intel HD 4200 Graphics (?) 并转到属性并将其更改为其他内容,例如微软的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-23
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 2013-03-18
    • 2017-04-22
    • 1970-01-01
    相关资源
    最近更新 更多