BCB编出来的程序A中通过ShellExecuteEx调用程序B,而程度B运行需要很长时间.这时程序A的界面就不刷新而成白色.如何解决这个问题?

但我要让程序B执行完后,再执行下面的其它程序,放到新线程中去做,能达到这要求不?

看错问题了,抱歉

B程序有窗体吧,或者有进程名称
在A程序调用B程序后,可以遍历启动的窗体,查找对应的窗体TITLE,发现窗体后再继续运行,当然应该设置一个超时,超过时间继续运行并报错,这应该算是一个比较简单的办法
如果B程序没有窗体可以把查找窗体换成查找进程以及进程内某个线程是否存在,则视为程序启动成功

程序A和程序B都有窗体,但现在是窗体B执行时,窗体A没有刷新.程序B一执行完,窗口B会关闭,这时窗体A也刷新了.