使用Automator运行脚本
如果您使用OSX 10.4(“Tiger”)或更高版本,Prism会安装一个Automator Action,使您启动Prism脚本。该“动作”的输入是包含Prism脚本的文件,或者是脚本本身的文本。得到的输出是单词“Done”或错误消息。
使用MacScript,从Microsoft Office运行脚本
MacScript命令允许您通过Word或Excel启动Prism。这些示例假设您正通过Excel运行Visual Basic for Applications(VBA)。
使用该MacScript命令启动Prism。
MacScript “tell application “”HD:Prism4:Prism””” + Chr(13) + _
“activate” + Chr(13) + _
“open file “”Macintosh HD:Prism4:Scripts:dr2””” + Chr(13) + _
“end tell”
MacScript命令必须指定Prism的完整位置和Prism将启动的脚本。MacScript命令是一个您需要在Excel宏中编写的Visual Basic语句,它可能在用户点击按钮时运行。
一旦Visual Basic启动Prism,它将继续运行Visual Basic程序或宏中的下一条语句。它不会等到Prism完成后再继续。如果您不采取下述额外步骤,您的Visual Basic程序将在Prism完成创建文件之前尝试读取包含Prism结果的文件。为避免出现该情况,请暂停您的Visual Basic程序,直至Prism创建一份文件。
在您编写Prism脚本时,在脚本的末尾添加一些行,创建一份文件,告诉Visual Basic您已经完成。下文给出了如何创建done.txt的示例。
OpenOutput "done.txt"
WText "done"
CloseOutput
您的Visual Basic代码应该首先删除done.txt文件(如果它存在于以前的运行中),然后启动Prism。紧接着,包括这些行,使您的程序循环,直至创建done.txt。
Do Until Dir$(“HD:prism 5:done.txt") > ""
Application.Wait Now + TimeValue("00:00:1")
Loop
上述示例中的第一行检查done.txt文件是否存在。根据需要更改路径和文件名。如果文件存在(Prism已经完成),则Visual Basic会继续执行循环之外的任何后续代码。如果文件尚不存在,则Visual Basic会等待1秒钟,然后再次循环测试该文件是否存在。
MacScript “tell application “”HD:Prism4:Prism””” + Chr(13) + _
“quit” + Chr(13) + _
“end tell”
从AppleScript运行脚本
此处所示是一个AppleScript示例,它启动Prism并告诉它运行名为DR2的脚本,该脚本位于名为HD的磁盘上的P4scripts文件夹中。
tell application "HD:Applications:Prism4 Folder:Prism"
activate
open file“HD:P4scripts:DR2.pzc”
end tell
请注意,有两种方法可以指定路径。上述示例使用HFS路径。此处所示是使用POSIX路径的同一个示例。
tell application "HD:Applications:Prism4 Folder:Prism"
activate
open POSIX file“/P4scripts/DR2.pzc”
end tell
使用Posix样式时,需要使用斜线(而非冒号),且必须具有开始斜线。