使用 Automator 运行脚本
如果您使用的是 OS X 10.4(“Tiger”)或更高版本,Prism 会安装一个 Automator Action,允许您启动 Prism 脚本。该 Action 的输入可以是包含 Prism 脚本的文件,也可以是脚本本身的文本。输出结果要么是“完成”一词,要么是错误信息。
使用 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 命令是一条 Visual Basic语句,您需要将其编写到 Excel 宏中,例如在用户点击按钮时运行的宏。
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 并指示其运行位于名为 HD 的磁盘上 P4scripts 文件夹中的名为 DR2 的脚本。
tell application "HD:Applications:Prism4 Folder:Prism"
activate
open file “HD:P4scripts:DR2.pzc”
end tell
请注意,指定路径有两种方式。上面的示例使用了 HFS 路径。以下是使用 POSIX 路径的本示例。
告诉应用程序 "HD:应用程序文件夹:Prism4 Folder:Prism"
激活
打开 POSIX 文件 “/P4scripts/DR2.pzc”
end tell
使用 POSIX 风格时,请使用斜杠(而非冒号),并且必须以斜杠开头。