sb-ext的参数:运行程序

问题描述:

有人能告诉我到底是什么args参数应该看起来像sb-ext:run-programsb-ext的参数:运行程序

如果我这样做:

(sb-ext:run-program "C:/Program Files/iTunes/iTunes.exe" 
       "C:/lispbox-0.7/opus.mid") 

我得到这个错误:

debugger invoked on a TYPE-ERROR: 
    The value "C:/lispbox-0.7/opus.mid" is not of type LIST. 

但是,如果我这样做:

(sb-ext:run-program "C:/Program Files/iTunes/iTunes.exe" 
       (list "C:\lispbox-0.7\opus.mid")) 

iTunes中打开,但MIDI文件没有按即使这个Windows命令提示符的调用工作得很好:

U:\>"C:\Program Files\iTunes\iTunes.exe" C:\lispbox-0.7\opus.mid 

注意,这个(正斜杠):

CL-USER> (sb-ext:run-program "C:/Program Files/iTunes/iTunes.exe" 
       (list "C:/lispbox-0.7/opus.mid")) 

有同样的效果:iTunes中打开,但该文件不播放。

在列表中,您使用的单反斜杠被解析为转义序列。你需要使用双反斜杠。

+0

是的,你是对的。双反斜杠工作(但正斜杠没有)。 – 2010-11-02 14:57:02