VFP中常用WIN32API函數(shù)調(diào)用事例.doc

VFP中常用WIN32API函數(shù)調(diào)用事例.doc

ID:59252157

大小:13.50 KB

頁數(shù):2頁

時間:2020-09-08

VFP中常用WIN32API函數(shù)調(diào)用事例.doc_第1頁
VFP中常用WIN32API函數(shù)調(diào)用事例.doc_第2頁
資源描述:

《VFP中常用WIN32API函數(shù)調(diào)用事例.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、VFP中常用WIN32API函數(shù)調(diào)用事例我們在VFP編程時,為了彌補VFP本身功能的不足,常常會用到WIN32API函數(shù)來對VFP的功能行擴(kuò)展,例如取得系統(tǒng)信息、對注冊表進(jìn)行操作等,但是由于WIN32API函數(shù)是C++的數(shù)據(jù)結(jié)構(gòu)形式,在調(diào)用時與VFP的數(shù)據(jù)格式有所不同,因此在調(diào)用時往往會產(chǎn)生問題,而目前的一些資料所介紹的大都是VB、DELPHI等語言如何調(diào)用,對VFP如何調(diào)用介紹的比較少,更缺少具體的調(diào)用事例,下面我分幾次介紹在VFP如何調(diào)用WIN32API函數(shù),并就一些常用的WIN32API函數(shù)作一介紹,由于本人水平有限,所介紹的內(nèi)容,僅供您參考,也

2、歡迎您在我的[請您留言]中共同探討:.................一、VFP中調(diào)用WIN32API函數(shù)的格式VFP中調(diào)用WIN32API函數(shù)的命令主要是:DECLARE-DLLCLEARDLLS1.DECLARE-DLL它用于注冊外部Windows32位動態(tài)鏈接庫(.DLL)中的一個函數(shù)。語法:DECLARE[cFunctionType]FunctionNameINLibraryName[ASAliasName]  .......[cParamType1[@]ParamName1,cParamType2[@]ParamName2,...]說明:cF

3、unctionType指定該函數(shù)返回值的類型,其類型代碼如下:SHORT16位整數(shù)INTEGER32位整數(shù)SINGLE32位浮點數(shù)DOUBLE64位浮點數(shù)STRING字符串FunctionName指定要注冊使用的32位函數(shù)名。注意FunctionName區(qū)分大小寫?!     ∪绻摵瘮?shù)名與VisualFoxPro的保留字相同,應(yīng)使用AS參數(shù)另起      別名。INLibraryName指定該函數(shù)所在的外部動態(tài)鏈接庫文件名,如果LibraryName為:       WIN32API時,VFP將依次查找KER

4、NEL32.DLL、GDI32.DLL、       USER32.DLL、MPR.DLL及ADVAPI32.DLL等動態(tài)鏈接庫文件名。ASAliasName當(dāng)API函數(shù)的名稱與VisualFoxPro的保留字相同時,另取       AliasName別名,另取的別名是不區(qū)分大小寫的。cParameterType1[@]ParamName1,cParameterType2[@]ParamName2,...      指定傳遞給被調(diào)用的32位.DLL函數(shù)的參數(shù)類型及參數(shù)名稱。其類      型代碼如FunctionType,如果要以傳址方法傳遞參數(shù)則應(yīng)在參

5、數(shù)      名前加上@。2.CLEARDLLS釋放所有利用DECLARE-DLL命令所裝入的動態(tài)鏈接庫。....一旦申明WIN32API函數(shù)成功,就可以和一般函數(shù)一樣用?xxx()、=xxx()來調(diào)用。....下面以具體事例談?wù)剋in32api在Vfp中的運用:1.利用win32api函數(shù)獲取指定磁盤的卷標(biāo):Stor0toC_var,C_cd,C_qfC_Var='c:'DECLAREINTEGERGetVolumeInformationINWin32APISTRING@,STRING@,INTEGER,;   INTEGER@,INTEGER@,IN

6、TEGER@,STRING@,INTEGERxx=GetVolumeInformation(C_Var,"",20,@C_var,@C_cd,@C_qf,0,0)CLEARDLLS&&釋放所有利用DECLARE-DLL命令所裝入的動態(tài)鏈接庫。xx<>0獲取指定磁盤的卷標(biāo)成功,反之則未成功。C_var=指定磁盤的卷標(biāo),是個十進(jìn)制的數(shù)值,與我們在DOS下看到的16進(jìn)制不同。C_cd=系統(tǒng)規(guī)定的文件名每一部分的長度,是個十進(jìn)制的數(shù)值。C_qf=文件名的大小寫標(biāo)志,是個十進(jìn)制的數(shù)值。.....怎么樣很簡單吧,我們可以把獲取的磁盤卷標(biāo),用來加密我們的軟件,這樣我們的

7、軟件就具有防拷貝的功能了。

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。