您正在看的Powerbuilder教程是:在PB中调用外部程序并判断其运行结束
在PB中经常要调用外部程序并等待此程序运行结束后显示相关信息 如我们要备份Adaptive Server Anywhere 数据库 在备份结束后显示 备份完成! 的提示信息 如果在调用备份程序dbbackup后马上用messagebox显示提示信息 那么程序运行时则会出现这种情况 dbbackup备份程序还在运行 备份完成! 的提示就已经显示了 显然不符合我们的设想 对于这种情况 我们可以借助API函数FindWindowA() IsWindow()和PB本身函数yield()来解决
声明API函数
Function long FindWindowA (String lpClassName String lpWindowName ) Library user dll Function boolean IsWindow (Long hwnd ) Library user dll调用
ulong ll_handle int li_loop
SetPointer(HourGlass!) //设置鼠标指针 //运行备份数据库程序dbbackup 并使其最小化 run( dbbackup c ~ uid=dbapwd=sqldbf=D:\Sybase\Adaptive Server Anywhere \asademo db~ d:\backup Minimized!)
lishixinzhi/Article/program/PB/201311/24551你是用的SQLSERVER数据库吗?在SQLSERVER2008里面有个【活动监视器】, 快捷键Ctrl+Alt+A, 可以看到 *** 作的状态以及进程ID,看到哪个占用时间太久,可以把它kill掉。窗口的close或closequery事件中写以下代码
if messagebox("提示","是否退出?", Question!, YesNo!) = 1 then
RETURN 0
else
return 1
end if
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)