「locktype」enum typeタイプの再定義問題の解決

1419 ワード

作者:金色燦
ソース:http://blog.csdn.net/clever101
 
         adoを使ってデータベースに接続したところ、このようないくつかのコンパイルエラーが発生しました。
1>f:\c+pro\iocptser\debug\msado 15.tlh(228):error C 2011:「LockType Enum」:「enum」タイプは再定義されています。
1>c:\program files\microsoff dks\windows\v 6.0 a\include\dbdaoid.h(109):「LockType Enum」の声明を参照してください。
1>f:\c+pro\iocptser\debug\msado 15.tlh(276):error C 2011:「DataType Enum」:「enum」タイプは再定義されています。
1>c:\programfiles\microsoff sdks\windows\v 6.0 a\include\dbdaoid.h(138):「DataType Enum」を参照の声明
1>f:\c+pro\iocptser\debug\msado 15.tlh(321):error C 2011:「FieldAttributeEnum」:「enum」タイプ再定義
1>c:\programfiles\microsoff sdks\windows\v 6.0 a\include\dbdaoid nt.h(127):「FieldAttributeEnum」を参照の声明
1>f:\c+pro\iocptser\debug\msado 15.tlh(343):error C 2011:「Edit ModeEnum」:「enum」タイプは再定義されています。
1>c:\programfiles\microsoff sdks\windows\v 6.0 a\include\dbdaoid.h(83):「Edit ModeEnum」を参照の声明
1>f:\c+pro\iocptser\debug\msado 15.tlh(352):error C 2011:「RecordStatus Enum」:「enum」タイプ再定義
 
        WindowsSDKのいくつかのヘッダファイルと定義されているタイプが衝突しているようです。daoでデータを接続しなくてもいいと思いますが、頭のファイルを注釈してしまいました。そこで、stdafx.hの下のdaoヘッダのファイルに関するコードを注釈しました。
#ifndef _AFX_NO_DAO_SUPPORT
#include                      // MFC DAO     
#endif // _AFX_NO_DAO_SUPPORT
          再コンパイルはこれらのコンパイルエラーがありません。
転載先:https://www.cnblogs.com/lanzhi/p/6470261.html