zoukankan      html  css  js  c++  java
  • 程序无法启动此应用程序,因为计算机中丢失glut32.dll

    原文链接http://blog.csdn.net/tyxkzzf/article/details/40789901

    今天打开一个OpenGL源码,各种修改之后想要运行看一下效果,结果在我的开发环境下出现缺少相应的dll库:

    Windows7 64位+VS2010

    提示:程序无法启动此应用程序,因为计算机中丢失glut32.dll。。。。。。

    果断查看System32文件夹,发现有这个文件,那就不明白了,为什么还是找不到呢,不合理啊。

    一时半会儿没找到,为了尽快看到代码运行的效果,就把这个dll拷贝到生成的exe同级目录了,嗯,可以了。

    不过不甘心,后来查看Windows目录,发现在system32同级的目录还有一个目录:SysWOW64,看样子是64位特有的文件夹,果断查一下这个文件夹的来龙去脉,这里引用一下百度百科的解释:

    转换库

    WoW64子系统是一个轻量级的compatibility layer, 在所有版本的windows上都拥有同样的接口. 它的主要目的是用来创建32-bit环境, 为了让32位的应用程序可以不经过任何修改就运行在64-bit的系统上, 它提供了必须的接口。
    技术上说, WOW64是由三个DLL实现的。
    Wow64.dll是Windows NT kernel的核心接口, 在32位和64位调用之间进行转换, 包括指针和调用栈的操控. Wow64win.dll 为32位应用程序提供合适的入口指针. Wow64cpu.dll 负责将处理器在32位和64位的模式之间转换。

    而且在该目录下发现了glut.dll,这不是glut32.dll的近亲嘛,于是就把这个dll放到该目录下,把跟exe同级目录里的那个dll删除掉,果然运行成功。

  • 相关阅读:
    OpenCMS创建导航条
    C++笔记(2)面向对象编程
    C++笔记(3)模板与泛型编程
    多线程和信号量
    C++笔记(4)用于大型程序的工具
    C++笔记(5)特殊工具与技术
    C++笔记(1)类
    Effective C++ 笔记(1)
    C语言笔记整理(2)
    C语言笔记整理(3)
  • 原文地址:https://www.cnblogs.com/zhuyaguang/p/4623607.html
Copyright © 2011-2022 走看看