Вот мой код
#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 уже давно устарела. Быстрый поиск в Google показывает, что у людей есть ваша проблема уже в .NET 2003. Очевидно, что они не хотят, чтобы люди больше использовали ее, и скорее поощряют их переключаться на ADO.NET или что-то еще. Поэтому, если вы не заблокированы в DAO, я бы рекомендовал изучить другие варианты базы данных.
Тем не менее, как CDaoDatabase
все еще присутствует в документации для VS 2012 и даже Предварительный просмотр 2013 Я думаю, что вы можете смело игнорировать это предупреждение, если вам действительно нужно использовать DAO. Похоже, это будет поддерживаться еще немного.
Вам не нужно включать afxdao.h
больше.
Просто удалите эту строку, и она должна работать.