Clozure Common Lisp中的运行程序不显示GUI窗口

| 我在win7操作系统下使用ccl,我在ccl控制台中这样调用
run-program
函数:
(ccl:run-program \"notepad.exe\" () :wait t)
之后,我可以从“任务管理器”的进程列表中找到“记事本”进程,然后使用ccl块等待“记事本”进程退出。但是记事本的GUI窗口不显示。记事本似乎只是在后台运行。 我不确定我是否错过了“运行程序”的任何参数,有人遇到同样的问题吗? 有什么解决办法吗?
已邀请:
我在Windows Vista下有同样的问题。 我的临时解决方法是启动一个批处理文件,其中包含要启动的程序。 例如C:/tmp/notepad-starter.bat包含:
notepad.exe %1
..这使我可以输入
(ccl:run-program \"C:/tmp/notepad-starter.bat\" \'(\"C:/tmp/notepad.pl\") )
...工作正常,并启动了包括GUI的notepad.exe进程。 您甚至可以先从Lisp中动态创建批处理文件,然后再启动它。
我发现了一个更简单的方法: 创建一个名为例如的批处理文件。 generic-batch-starter.bat 仅包含%1%2%3%4 然后,您可以将可执行文件作为参数列表的一部分进行调用: (ccl:运行程序\“ C:/tmp/generic-batch-starter.bat \” \'(\“ notepad.exe \” \“ textfile.txt \”))
这对我在Windows 7上起作用,以使记事本窗口可见
(ccl:run-program \"cmd.exe\" \'(\"/c\" \"notepad.exe\") :wait nil)

要回复问题请先登录注册