建立一个基于对话框的MFC应用程序.
程序名为:222    编译时提示错误:fatal error C1083: Cannot open precompiled header file: 'Debug/222.pch': No such file or directory
请高手帮忙..我是一个新手.同学机子上没有MSDN.请高手指教..

解决方案 »

  1.   

    仔细检查一下你的头文件名有没有写错,例如你新增了一个CDisplay的类,但是包含头文件时不是:#include "CDisplay.h",而是:#include "Display.h",可能你的错就在这个地方。
      

  2.   

    主要是预编译头文件的问题。
    到“工程” --》“设置”--》“C/C++“--》”Project Options“
    添加这个:
    /Fp"Debug/222.pch" /Yu"stdafx.h"
      

  3.   

    可以在“Option”里去掉关于预编译的选项
      

  4.   

    如果有该文件,#include "stdafx.h",别用#include <stdafx.h>
    如果没有该文件,settings中catetory选precompiled header中选not ...
      

  5.   

    在编译其它文件前,先编译一下 stdafx.cpp
      

  6.   

    接下重新编译所有,也就是ReBulidAll我想就可以解决了。
      

  7.   

    好了。只不过要连接一次再编译才能对//
    /Fp"Debug/caculate.pch" /Yu"stdafx.h"这个东西在
    到“工程” --》“设置”--》“C/C++“--》”Project Options“
    本来就有。
    对是对了。但是不明白为什么要编译后连接一次再编译才可以对呢.
      

  8.   

    小问题一个,是选项问题。---
    Unexpected end while looking for precompiled header
    这时因为该模块没有包括预编译头文件“stdafx.h”的缘故。
    VC用一个stdafx.cpp包含头文件stdafx.h,然后在stdafx.h里包含大部分系统头文件,这
    样编译时VC就通过编译stdafx.cpp把大部分系统头文件预编译进来了,在Debug目录下有
    一个很大的文件*.pch,这里就存储了预编译信息。
    根据这个原理,如果这个pch损坏了或被删除了,系统重新编译时就会抱怨“cannot open
    precompiled header file debug/*.pch”。这时怎么解决这个问题呢,打开Project-》
    Setting对话框选C++页,将Category下拉式列表框选中Precompiled Headers,最简单的
    办法就是选中第一个选项“Not using....",这样就根本不用预编译头也不去寻找pch文件,
    就不会出错了,但是这样做的后果是每次编译、连接都化更多的时间。
    也可以选第二个选项”Automatic ...",然后在“Through header”力填上stdafx.h,这样
    如果没有pch文件系统会自动生成一个pch,如果有的话就使用这个pch,这个选项是比较“
    智能”的。
    第三个选项是强行创建一个pch文件,第四个选项是直接使用pch文件。当然“Through
    headers”里都填stdafx.h了。
      

  9.   

    上面的你要仔细看,如果不仔细看就直接看下面的吧
    打开Project-》
    Setting对话框选C++页,将Category下拉式列表框选中Precompiled Headers,最简单的
    办法就是选中第一个选项“Not using....",
      

  10.   

    直接把你的工程Rebuild All一次即可