 |
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
Ruey
註冊時間: 2003-03-12 文章: 1698 來自: tunglo
第 1 樓
|
發表於: 星期三 四月 28, 2004 12:21 am 文章主題: 在run語句之後判斷該程序是否執行完畢(轉貼) |
|
|
來源 B編程俱樂部論壇
http://pbclub.ok100.net/
在run語句之後判斷該程序是否執行完畢
Guest問:
run("e:\program files\microsoft visual studio\vfp98\vfp6.exe c:\gzhz.prg")
dw_1.reset()
messagebox("hello","按確定鍵把匯總文件導入!!!")
dw_1.importfile("c:\gzhz.txt")
delete from gzhz;
dw_1.update()
程序中,執行第一句的時候,由於foxpro慢,沒等它結束,就執行
了下面的句子。一句一句執行,該咋辦?
蔡毅答:
在run語句之後判斷該程序是否執行完畢。
定義外部函數:
Function long FindWindowA (String lpClassName , String lpWindowName ) Library "user32.dll"
Function boolean IsWindow (Long hwnd ) Library "user32.dll"
腳本:
run("e:\program files\microsoft visual studio\vfp98\vfp6.exe c:\gzhz.prg",Minimized!)
ll_handle = 0
//循環至窗口打開
Do While ll_handle = 0
ll_handle = FindWindowA("tty","foxpro應用的窗口名") //
yield() //
loop
//等待窗口關閉
Do While isWindow(ll_handle)
Yield()
Loop
(繼續下面的語句)
Guest問:
我的gzhz.prg文件如下:
set safe off
use c:\gzhz.dbf
zap
appe from c:\gzhz.txt type deli with tab
sort on xm to c:\gzhz1.dbf(按姓名排序)
use c:\gzhz1.dbf
total on xm to c:\gzhz2.dbf(按姓名匯總)
use c:\gzhz2.dbf
sort on bh to c:\gzhz3.dbf(按編號排序)
use c:\gzhz3.dbf
copy to c:\gzhz.txt type deli with tab(生成一個TXT文件)
quit
那在這一句中,ll_handle = FindWindowA("tty","foxpro應用的窗口名")
我該填啥?
我是小木魚答:
也可以這樣做,在PB中:
run(....)
//延時,判斷一下某文本文件中的某值或某文本文件是否存在?
若否則繼續延時再判斷,直到成功
//繼續進行下面的語句。
在VFP中(你的*.prg文件)最後全部執行完畢後再新增一文件或改文本文件中的值。
不知我說明白了沒! _________________ #############################
快樂媽咪系列幸福宅配,喝十全雞湯~原來幸福那麼簡單!!
學會VFP使用者社區的搜尋,Code才會更有趣~
############################# |
|
回頂端 |
|
 |
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|