注册 登录
编程论坛 VFP论坛

请教:执行外部程序的问题

zhousr 发布于 2023-06-05 09:40, 839 次点击

我需要调用一个外部程序,执行完毕后再继续执行后续代码。

ox=CreateObject("WScript.Shell")
ox.Run("F:\ABBYY FineReader 15\finereader.exe",1,1)

执行报错,找不到指定文件。可这个位置文件是存在的,是什么原因呢?

只有本站会员才能查看附件,请 登录
6 回复
#2
hu9jj2023-06-05 09:47
会不会是路径中的空格字符影响到VFP的识别?
#3
hu9jj2023-06-05 09:49
VFP是几十年前开发的,哪时的操作系统对路径字符的要求比较苛刻,不象现在那么人性化。
#4
厨师王德榜2023-06-05 10:06
路径中不要有空格.
如果一定要带空格,考虑用 "Shell.Application" 代替 "Wscript.Shell"
示例如下:
oApp=Createobject("Shell.Application")  && Shell.Application 可以传递参数到B模块。
oApp.ShellExecute(ff)  &&  ff = "F:\ABBYY FineReader 15\finereader.exe"
Release oApp
#5
吹水佬2023-06-05 10:27
这样就可以:
ox.Run(["F:\ABBYY FineReader 15\finereader.exe"],1,1)
#6
zhousr2023-06-05 11:26
出去了一会,已经有这么多好建议了。抓紧去试,试后汇报结果。
谢谢大家!!
#7
zhousr2023-06-05 11:32

谢谢hu9jj、厨师王德榜、吹水佬!
两种方案均可行,非常感谢!!!
1