我建了一个 Win32 Dynamic Library 工程,在动态库中建立了新线程,为了保证一个资源一次只能有 一个线程访问,我建立了一个CcriticalSection对象,需要加入头文件"Afxmt.h",但编译时报出错误:#error :  WINDOWS.H already included.  MFC apps must not #include <windows.h>
该怎么解决呀???请高手指教呀

解决方案 »

  1.   

    你建立的时候不是 MFC 的工程!里面缺少了内容!
      

  2.   

    简单查了一下我的经验表,仅供参考
    135、有时因为多个文件都包含同一个.h文件colledoc.h,而这些文件又都要在一起编译,这时编译报错:某结构、某类重复定义
    可以进入被很多文件包含的这个colledoc.h文件中,在其文件开头加入类似
    #if !defined(AFX_COLLEDOC_H__Cmzqadded__INCLUDED_)
    #define AFX_COLLEDOC_H__Cmzqadded__INCLUDED_
    在结尾加入
    #endif // !defined(AFX_COLLEDOC_H__Cmzqadded__INCLUDED_)
    则不再报错--------------
      

  3.   

    但"Afxmt.h"和<windows.h>这两个头文件我又不能改呀
      

  4.   

    #pragma once
    Steven7(Steven7) 经验表是怎么做的啊,很细心的人啊,值得学习一下