編輯對話框系統顯示找不到檔案,請問是怎么回事?

uj5u.com熱心網友回復:
編譯生成失敗, 清理專案、重建全部試試看,是否是權限不足, 以管理員身份運行VS試試看
專案復制到非C盤目錄下試試看
uj5u.com熱心網友回復:
LNK1123,百度一下就可以了。uj5u.com熱心網友回復:
洗掉原來Release下編譯過的檔案 重新編譯就好了uj5u.com熱心網友回復:
這段代碼在win7運行正常,可在win10中運行到return時,1分鐘內崩潰,求指導。void CLogin::OnBnClickedButton3()//按鈕
{
UpdateData(TRUE);
CADOConn m_ADOConn;
CString strPath=_T("personnel.mdb");//檔案路徑
m_ADOConn.OnInitADOConn(strPath);//連接資料庫
//判斷ExamArrange表是否被篡改
_bstr_t SQL="select * from ExamArrange";
_RecordsetPtr m_pRecordSet=m_ADOConn.GetRecordSet(SQL,strPath);//記錄集指標
int n=m_pRecordSet->GetRecordCount();//記錄集中的條數
if(n==0)//表中資料為空
{
MessageBox(_T("考試資訊為空,無法進行考試!"),_T("Saes提示"));
m_ADOConn.ExitConnect();//斷開資料庫,否則連續多次運行可能記憶體溢位
return;
}
COleDateTime tm=COleDateTime::GetCurrentTime();//獲得系統時間
while(!m_pRecordSet->adoEOF)
{
_variant_t var1=m_pRecordSet->GetCollect("考試名稱");//取得欄位的值
CString str1;
if(var1.vt!=VT_NULL)//串列框顯示不能為空,否則自動退出
str1=(LPCSTR)(_bstr_t)var1;
_variant_t var2=m_pRecordSet->GetCollect("開始時間");
CString str2;
if(var2.vt!=VT_NULL)
str2=(LPCSTR)(_bstr_t)var2;
_variant_t var3=m_pRecordSet->GetCollect("結束時間");
CString str3;
if(var3.vt!=VT_NULL)
str3=(LPCSTR)(_bstr_t)var3;//結束時間
_variant_t var4=m_pRecordSet->GetCollect("合格分數");
CString pass;
if(var4.vt!=VT_NULL)
pass=(LPCSTR)(_bstr_t)var4;
_variant_t var5=m_pRecordSet->GetCollect("時效");
CString str5;
if(var5.vt!=VT_NULL)
str5=(LPCSTR)(_bstr_t)var5;//"結束"
_variant_t var6=m_pRecordSet->GetCollect("保存碼");
CString str6;
if(var6.vt!=VT_NULL)
str6=(LPCSTR)(_bstr_t)var6;
if(md5(str1+str2+str3+pass+str5)!=str6)
{
MessageBox(_T("考試資訊已被篡改,無法進行考試!"),_T("Saes提示"));
m_ADOConn.ExitConnect();//斷開資料庫
return;
}
//判斷考試是否結束
COleDateTime EndTime;
EndTime.ParseDateTime(str3);
if(str5==_T("") && EndTime<=tm)
{
CString ssql,cvar;
cvar=md5(str1+str2+str3+pass+_T("結束"));
m_pRecordSet->PutCollect("時效",_variant_t(_T("結束")));//寫入
m_pRecordSet->PutCollect("保存碼",_variant_t(cvar));//寫入
m_pRecordSet->Update();//更新表內記錄
}
m_pRecordSet->MoveNext();//移到下一條記錄
}
//判斷JoinExam表是否被有洗掉行
_bstr_t sql="select * from ExamRegister";
_RecordsetPtr m_pRecordSet1=m_ADOConn.GetRecordSet(sql,strPath);
int m=m_pRecordSet1->GetRecordCount();
_bstr_t asql="select * from JoinExam";
_RecordsetPtr m_pRecordSet2=m_ADOConn.GetRecordSet(asql,strPath);
int a=m_pRecordSet2->GetRecordCount();
if(a==0 || m==0)
{
MessageBox(_T("資料庫已被篡改,無法進行考試!"),_T("Saes提示"));
m_ADOConn.ExitConnect();
return;
}
//判斷ExamRegister表是否被篡改
_bstr_t strSQL="select * from ExamRegister where 成績 is null";
_RecordsetPtr m_pRecordSet3=m_ADOConn.GetRecordSet(strSQL,strPath);
while(!m_pRecordSet3->adoEOF)
{
_variant_t evar1=m_pRecordSet3->GetCollect("姓名");
CString estr1;
if(evar1.vt!=VT_NULL)
estr1=(LPCSTR)(_bstr_t)evar1;
_variant_t evar2=m_pRecordSet3->GetCollect("部門");
CString estr2;
if(evar2.vt!=VT_NULL)
estr2=(LPCSTR)(_bstr_t)evar2;
_variant_t evar3=m_pRecordSet3->GetCollect("職務");
CString estr3;
if(evar3.vt!=VT_NULL)
estr3=(LPCSTR)(_bstr_t)evar3;
_variant_t evar4=m_pRecordSet3->GetCollect("考試號");
CString estr4;
if(evar4.vt!=VT_NULL)
estr4=(LPCSTR)(_bstr_t)evar4;//考試號
_variant_t evar5=m_pRecordSet3->GetCollect("合格分數");
CString estr5;
if(evar5.vt!=VT_NULL)
estr5=(LPCSTR)(_bstr_t)evar5;
_variant_t evar6=m_pRecordSet3->GetCollect("保存碼");
CString estr6;
if(evar6.vt!=VT_NULL)
estr6=(LPCSTR)(_bstr_t)evar6;
if(md5(estr1+estr2+estr3+estr4+estr5)!=estr6)
{
MessageBox(_T("資料庫已被篡改,無法進行考試!"),_T("Saes提示"));
m_ADOConn.ExitConnect();//斷開資料庫
return;
}
m_pRecordSet3->MoveNext();
}
m_ADOConn.ExitConnect();//斷開資料庫
CDialog::OnOK();//關閉對話框
CExamLogin dlg;
dlg.DoModal();
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/16942.html
標籤:基礎類
