【问题标题】:scripting bridge header files脚本桥头文件
【发布时间】:2011-03-14 16:37:07
【问题描述】:

如何在运行时生成脚本桥接文件?我想使用脚本桥来退出应用程序,但该应用程序在编译时是未知的。

【问题讨论】:

    标签: cocoa scripting-bridge


    【解决方案1】:

    From the documentation:

    要创建头文件,您需要同时运行两个命令行工具(sdef 和 sdp),并将其中一个的输出通过管道传输到另一个。这是推荐的语法:

    sdef /path/to/application.app | sdp -fh --basename applicationName

    【讨论】:

    • 我也有类似的问题...具体来说,在 Lion 上运行,我需要安装 sdef 和 sep 吗?我的机器上似乎没有这些命令行实用程序,因为在尝试使用上述命令时,我得到了一个 -bash command not found error foe...
    • @GregSteiner 它们应该安装在每台 Mac 上。
    • 如果是这样,您为什么认为我可能会收到 -bash 错误?
    • @GregSteiner 不知道;听起来这在apple.stackexchange.com上会是一个很好的问题@
    【解决方案2】:

    Scripting Bridge 是一种编译时技术。您也许可以在运行时生成标头,但这对您编译的应用程序有什么好处?

    尝试使用 AppleScript:

    NSString* script = [NSString stringWithFormat: @"tell application \"%@\" to quit", appName];
    NSAppleScript* as = [[[NSAppleScript alloc] initWithSource: script] autorelease];
    [as executeAndReturnError: nil];
    

    给定应用名称appName,您应该能够快速轻松地向其发送quit 事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-04
      • 1970-01-01
      • 1970-01-01
      • 2018-09-26
      • 2016-03-17
      • 1970-01-01
      相关资源
      最近更新 更多