標籤:message fonts gravity 檔案的 name next 技術分享 分享 混合
////////////////////2015/07/23///////////////////
////////////////////by xbw///////////////////////////
////////////////////環境 VS2013///////////////
問題又攻克了,攻克了登陸僅僅能用數字登陸的問題。還有自己主動記錄資料的問題。。
這個僅僅能用數字登陸是後來調試出來的bug,之前沒想到。為了調試方便,僅僅用了帳號為1。password為1來測試的,如今才發現問題,,,事實上僅僅要換點代碼就好了,,。
/*Dbset.GetFieldValue(_T("Name"), var);Sname = (LPCSTR)var.pbstrVal;Dbset.GetFieldValue(_T("Psw"), var);Spsw = (LPCSTR)var.pbstrVal;Dbset.GetFieldValue(_T("Score"), var);Sscore = (LPCSTR)var.pbstrVal;*/_variant_t varname, varpsw;varname = Dbset.GetFieldValue(_T("Name"));varpsw = Dbset.GetFieldValue(_T("Psw"));Sname = (LPCSTR)_bstr_t(varname);Spsw = (LPCSTR)_bstr_t(varpsw);
對照一下吧;;;;真是沒想到,改動了半天又該回去了,還是不理解啊,僅僅能亂摸索;;;;。
至於自己主動記錄的問題。這個也是使用全域變數的,,非常easy就攻克了。;。
/*Dbset.GetFieldValue(_T("Name"), var);Sname = (LPCSTR)var.pbstrVal;Dbset.GetFieldValue(_T("Psw"), var);Spsw = (LPCSTR)var.pbstrVal;Dbset.GetFieldValue(_T("Score"), var);Sscore = (LPCSTR)var.pbstrVal;*/_variant_t varname, varpsw;varname = Dbset.GetFieldValue(_T("Name"));varpsw = Dbset.GetFieldValue(_T("Psw"));Sname = (LPCSTR)_bstr_t(varname);Spsw = (LPCSTR)_bstr_t(varpsw);if (Sname.Compare(m_logname) == 0 && Spsw.Compare(m_logpsw) == 0)//假設password和賬戶與資料庫一致{user = m_logname;MessageBox(_T("登入成功!"), _T("溫情提示"));CDialog::OnOK();first = 0;break;}else{Dbset.MoveNext();}
對照一下跟之前有什麼不同,。多了一句user=m_logname;。。
這個user就是全域變數 ,。,
if (Sname.Compare(user) == 0)//假設password和賬戶與資料庫一致{Dbset.Edit();Dbset.SetFieldValue(_T("Score"), _variant_t(Str));Dbset.Update();MessageBox(_T("紀錄已儲存"), _T("溫情提示"));first = 0;break;}
記錄這邊這樣改動就好了,換成user;。;。
真開心,最終能夠提交了;;;。。
炫耀一下我的成果
就這樣吧。有須要project檔案的留言喲,我會發給你們的!!
!
。
windows程式設計——飛機大戰筆記(解決輸入混合password賬戶,結局自己主動記錄資料)