我终于在我的 InDesign CS6 脚本中取得了一些进展。现在,为了让它知道应该在哪台打印机上打印文档,我需要查询脚本在哪台计算机上运行。除此之外,也许是当前登录用户的名称,这实际上是一回事。顺便说一下,这是一个 Mac OS X 环境。任何人都可以帮助或至少为我指明正确的方向吗?
问问题
4832 次
1 回答
3
如http://jongware.mit.edu/idcs6js/pc_$.html所示,该$.getenv()
方法可用于获取任何环境变量。在 Windows 上你可以使用$.getenv("COMPUTERNAME")
,在 Mac 上$.getenv("HOSTNAME")
应该可以工作。
如果这不起作用,请告诉我。我没有要测试的 Mac,但可能还有其他选择。
编辑 1:您在使用 InDesign Server 吗?如果是这样,app.serverHostName
并且app.serverSettings.hostName
会工作。
编辑2:这是另一种可能的解决方案:
var outputFile = new File(Folder.desktop.fsName + "/GetHostName.sh");
outputFile.open("w");
try {
outputFile.write("scutil --get HostName > ~/Desktop/HostName.txt");
}
finally {
outputFile.close();
}
outputFile.execute();
var inputFile = new File(Folder.desktop.fsName + "/HostName.txt");
inputFile.open("r");
try {
var hostName = inputFile.read();
}
finally {
inputFile.close();
}
$.writeln("Host Name: " + hostName);
这个想法是将一个shell脚本写入文件然后执行它。shell 脚本获取主机名并将其写入文件。然后我们打开文件并读取主机名。
于 2013-05-17T16:39:28.760 回答