这是我的代码
#ifndef FL_PROJECTMNT
#include <afxdao.h>
#if ENGLISH
#define PROJECT "Project" // Project
#define NUMBER "No"
#define PRJNAME "Project Name"
#else
#define PROJECT "プロジェクト"
#define NUMBER "No"
#define PRJNAME "プロジェクト名"
#endif
#ifdef ENGLISH
#define RESBAMELIST NUMBER,PRJNAME,CNTNAME,TANTOU,PREV,SREV,LASTCTIME,NOTE,DOCNO,PLANTNAME,BUNSATU,MEMTYP,CMPCNT,PLASTCTIME,LINENOCNT,SVCHANGCNT
#else
#define RESBAMELIST NUMBER,PRJNAME,CNTNAME,TANTOU,PREV,SREV,LASTCTIME,NOTE,DOCNO,PLANTNAME,BUNSATU,MEMTYP,CMPCNT,PLASTCTIME,LINENOCNT,SVCHANGCNT,USECADINF
#endif
class AFX_EXT_CLASS ProjectMnt{
private:
CDaoDatabase Project;
CDaoRecordset *rec;
int state;
public:
ProjectMnt();
ProjectMnt(char* strPath);
~ProjectMnt();
int RenewLRDate();
int RenewPLRDate();
int GetProjectInfo(int kind,int size,char *data);
int GetProjectInfo(int kind,long int *data);
int SetProjectInfo(int kind,char* data);
int SetProjectInfo(int kind,long int data);
int GetState(){return state;};
};
#define FL_PROJECTMNT
#endif
当我遵守 Visual Studio 2008 时,它给出了这个警告,但我无法解决,有人帮助我吗? 警告 C4995:“CDaoDatabase”:名称被标记为 #pragma 已弃用
它表示您正在使用已弃用的类型,Visual Studio 的未来版本可能不支持该类型。
DAO 似乎已被 Microsoft 弃用一段时间了。快速的 Google 搜索显示人们早在 .NET 2003 就遇到了您的问题。显然他们不希望人们再使用它,而是鼓励他们切换到 ADO.NET 或其他东西。因此,如果您没有锁定 DAO,我建议您探索其他数据库选项。
但是,由于
CDaoDatabase
仍然存在于 VS 2012 甚至 2013 Preview 的文档中,我认为如果您确实必须使用 DAO,您可以安全地忽略该警告。看来还要再支持一段时间了。
您不再需要包含
afxdao.h
了。
只要删除这一行就可以了。