无法在“邮件”应用程序中执行 AppleScript

Posted

技术标签:

【中文标题】无法在“邮件”应用程序中执行 AppleScript【英文标题】:Not able to Execute AppleScript within "Mail" application 【发布时间】:2012-12-03 03:28:10 【问题描述】:

我已经创建了一个邮件插件,并在外发邮件的“发送”按钮旁边添加了“按钮”,

现在我也想从我的 Button 发送外发邮件,我也为此编写了 applescript

activate application "Mail"
tell application "System Events"
    tell application process "Mail"
        log "foo"
        tell menu bar 1
            tell menu bar item "Message"
                tell menu "Message"
                    click menu item "Send"
                end tell
            end tell
        end tell
    end tell
end tell

此脚本在 Applescript 编辑器中运行,但无法通过我的按钮单击运行

我也在 Xcode 中执行了 applescript,比如

NSURL* url = [NSURL fileURLWithPath:path];
NSDictionary* errors = [NSDictionary dictionary];    
NSAppleScript* appleScript = [[NSAppleScript alloc] initWithContentsOfURL:url error:&errors];
[appleScript executeAndReturnError:&errors];

执行脚本后出现错误:-

NSAppleScriptErrorAppName = "System Events";
NSAppleScriptErrorBriefMessage = "Can't get menu bar 1 of application process \"Mail\". Invalid index.";
NSAppleScriptErrorMessage = "System Events got an error: Can't get menu bar 1 of application process \"Mail\". Invalid index.";
NSAppleScriptErrorNumber = "-1719";
NSAppleScriptErrorRange = "NSRange: 0, 0";

所以我已经尝试了所有的东西但没有成功。

所以请帮我解决这个问题

感谢您的任何建议或帮助。

【问题讨论】:

【参考方案1】:

那个菜单项确实有一个键盘快捷键,所以你也可以使用它。你试过了吗?

activate application "Mail"
tell application "System Events"
    tell application process "Mail"
        keystroke "d" using command down, shift down
    end tell
end tell

【讨论】:

以上是关于无法在“邮件”应用程序中执行 AppleScript的主要内容,如果未能解决你的问题,请参考以下文章

无法将 javascript 文件作为电子邮件附件发送

Rails 4.2 - Sidekiq 在开发中不发送电子邮件

在 C# 中执行邮件合并时 LibreOffice 崩溃

无法在 Xamarin iOS 应用程序中将文本共享到电子邮件或短信中

带有芹菜的Django:计划任务(ETA)并行执行多次

PCB SQL SERVER 发送邮件(异步改同步)