本站小編為你精心準(zhǔn)備了探討vfp編程的使用心得參考范文,愿這些范文能點(diǎn)燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。
關(guān)鍵詞:計(jì)算機(jī);編程;vfp6;實(shí)用;小技巧
摘要:本文列出了vfp四個(gè)編程小技巧,使編程工作變得輕松方便,給學(xué)習(xí)vfp編程人員一定的幫助。
一、實(shí)現(xiàn)只開(kāi)一個(gè)vfp程序窗口
編寫完成一個(gè)vfp程序后,不允許在已經(jīng)運(yùn)行該程序情況下,又繼續(xù)再次運(yùn)行,否則會(huì)出現(xiàn)報(bào)錯(cuò)提示。
為防止操作員連續(xù)運(yùn)行程序,可以用下段程序命令阻止其運(yùn)行,保證只開(kāi)一個(gè)程序窗口,下邊命令段放在vfp的jpg主程序中,就可以實(shí)現(xiàn)正常只開(kāi)一個(gè)程序窗口:
localwindowbt
windowbt=’最終打開(kāi)窗口的標(biāo)題名’
declareintegerfindwindowinuser32.dllasfind_windowstring,string
iffind_window(0,windowbt)!=0
messagebox("本系統(tǒng)已經(jīng)運(yùn)行了!",48,’系統(tǒng)信息’)
quit
endif
程序說(shuō)明:其中變量windowbt的賦值為最終你打開(kāi)的vfp窗口標(biāo)題名。
二、防止程序退出時(shí)不能退出的錯(cuò)誤提示
一個(gè)程序系統(tǒng)編寫完成后,在退出vfp程序時(shí)出現(xiàn)下列提示,導(dǎo)致不能退出程序的問(wèn)題。
我們可以事先保存一個(gè)jpg小文件,內(nèi)容只有一個(gè)命令quit,起名為q.jpg。然后在主程序中加入這樣一條命令就可以巧妙地解決上述問(wèn)題。命令為:onshutdowndoq.prg
三、讓程序在脫離vfp管理系統(tǒng)環(huán)境下運(yùn)行
如果在windows系統(tǒng)下直接運(yùn)行vfp的exe程序,出現(xiàn)了下面的錯(cuò)誤提示:
而在vfp環(huán)境中運(yùn)行卻不會(huì)出現(xiàn),說(shuō)明在程序運(yùn)行的文件夾下缺少vfp的一些環(huán)境運(yùn)行的系統(tǒng)文件,只要將vfp的系統(tǒng)文件拷貝過(guò)來(lái)就可以了。下面列出的是操作程序脫離vfp環(huán)境后可以支持其正常運(yùn)行的系統(tǒng)文件名。
vfpodbc.dll
vfp6rchs.dll
vfp6renu.dll
vfp6r.dll
請(qǐng)?jiān)趘fp安裝文件夾下找到以上4個(gè)文件后,再?gòu)?fù)制到你所編寫的操作程序文件夾下,之后你就可以在脫離vfp的環(huán)境下獨(dú)立運(yùn)行操作程序了。
四、數(shù)據(jù)表加密方法
因?yàn)樵趘fp環(huán)境中很容易地將數(shù)據(jù)表打開(kāi)查看,數(shù)據(jù)保密性變差,所以有必要對(duì)數(shù)據(jù)表進(jìn)行加密處理。
下面一段是加密命令程序,這段程序可以放在程序退出前或者單獨(dú)對(duì)某個(gè)數(shù)據(jù)表進(jìn)行加密:
nn=13
i=0
dowhili<nn
handle=fopen(’加密的數(shù)據(jù)表名稱.dbf’,2)
ifhandle=-1
=messagebox(’無(wú)法加密表文件’)
retu
endi
keybyte=fread(handle,1)
=fseek(handle,0)
=fwrite(handle,chr(asc(keybyte)+12))
=fclose(handle)
i=i+1
endd
數(shù)據(jù)加密后,必須進(jìn)行解密處理后才能正常使用,下面這段程序可以針對(duì)上面加密情況下進(jìn)行解密,可以放在jpg主程序中或者單獨(dú)對(duì)數(shù)據(jù)表進(jìn)行解密:
nn=13
i=0
dowhili<nn
handle=fopen(’解密的數(shù)據(jù)表名.dbf’,2)
ifhandle=-1
=messagebox(’無(wú)法解密總表文件’)
retu
endi
keybyte=fread(handle,1)
=fseek(handle,0)
=fwrite(handle,chr(asc(keybyte)-12))
=fclose(handle)
i=i+1
endd
經(jīng)過(guò)以上加密和解密的處理,數(shù)據(jù)表的安全性、保密性大大提高。