1

ここに私のコード

   #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に準拠すると、この警告が表示されますが、sloveできません。誰か助けてください? 警告 C4995: 'CDaoDatabase': 名前は #pragma deprecated としてマークされました

4

2 に答える 2

0

Visual Studio の将来のリリースではサポートされない可能性がある非推奨の型を使用しているとのことです。

DAO は、Microsoft によってかなり長い間廃止されているようです。Google で簡単に検索すると、.NET 2003 の時点で同じ問題を抱えている人がいます。明らかに、彼らはもはやそれを使用することを望んでおらず、むしろ ADO.NET などに切り替えるように勧めています。したがって、DAO に縛られていない場合は、他のデータベース オプションを検討することをお勧めします。

ただし、VS 2012および2013 PreviewCDaoDatabaseのドキュメントにもまだ存在するため、本当に DAO を使用する必要がある場合は、その警告を無視しても問題ないと思います。もう少し長くサポートされるようです。

于 2013-08-19T04:33:06.747 に答える