对面的高手看过来!!!!!!!!!!!!!!!!!!!!!!!
工程中CVuseripSet派生自CRecordSet,与有如下字段的access表关联;
CString m_InvUserIP;
CTime m_FirstAppTime;
int m_InvAppTimes;
CTime m_LastAppTime;
BOOL m_ShieldFlag;
在一个dialog 中进行添加记录操作,定义CVuseripSet* m_pVIPSet;指向记录集,添加部份code 如下:
m_pVIPSet->Requery();
m_pVIPSet->AddNew();
m_pVIPSet->m_InvUserIP=ClientIP;
m_pVIPSet->m_FirstAppTime=TimeNow;
m_pVIPSet->m_InvAppTimes=1;
m_pVIPSet->m_ShieldFlag=0;
m_pVIPSet->Update();
向表中添加第一条记录时,运行到m_pVIPSet->Update()时出错,程序显示非法操作。当我打开表时,记录
却已经在表中。
我设断点跟踪,在VuseripSet.cpp中,运行到RFX_Date(pFX, _T("[FirstAppTime]"), m_FirstAppTime);
RFX_Int(pFX, _T("[InvAppTimes]"), m_InvAppTimes);
m_FirstAppTime的值为负数,m_InvAppTimes的值正确。
当我把access表中的字段修改为:
CString m_InvUserIP;
int m_InvAppTimes;
BOOL m_ShieldFlag;
在一个dialog 中进行添加记录操作,定义CVuseripSet* m_pVIPSet;指向记录集,添加部份code 如下:
m_pVIPSet->Requery();
m_pVIPSet->AddNew();
m_pVIPSet->m_InvUserIP=ClientIP;
m_pVIPSet->m_InvAppTimes=1;
m_pVIPSet->m_ShieldFlag=0;
m_pVIPSet->Update();
运行一切正常。
请教各位大虾这是什么原因?帮我解决!
谢谢大家!