用于将文件附加到邮件消息的Applescript。在OSX 10.4到10.6中工作将不会在10.8中工作

时间:2012-12-30 19:25:31

标签: applescript osx-mountain-lion email-attachments

使用10.8,我的Applescript(在我运行10.4到10.6时开发)读取逗号单独的文本文件,使用这些值创建新的邮件消息,然后使用NSstring路径名将xx.pdf文件附加到文件,仍然发送电子邮件,但不包括附件。我从研究问题中了解到,10.8安全增强功能已经有了#S; SANDBOXed"邮件应用程序和AppleScript应用程序,以便路径名称不再作为文件的有效,可通过链接。我找到了几个声称能解决问题的例子,声称NSstring"文件名:"必须用NSURL格式的文件名替换,但代码看起来不像applescript,并且不会在applescript编辑器中编译。你有一个applecript的例子,它会将文件附加到一个新的AppleScript生成的电子邮件消息中吗?我一直在努力解决这个问题而没有成功。我甚至打电话给Apple支持热线,但他们说不再支持Applescript相关问题。

我从文本文件传入的变量名为" theAttachment1"。我想努力工作的路线是:

"在最后一段之后创建属性{文件名:theAttachment1}的新附件

同样,它在10.4到10.6中工作正常,但在10.8中不起作用。

1 个答案:

答案 0 :(得分:0)

这适用于我10.8

   set theAttachment1 to POSIX file "/Users/USERNAME/Desktop/Desktop--IMAGE/scooter-6.jpg"

tell application "Mail"
    set newMessage to make new outgoing message with properties {subject:"subject", content:"the_content" & return & return}
    tell newMessage

        set visible to false
        set sender to "myaddress@btinternet.com"
        make new to recipient at end of to recipients with properties {address:"someAddress@btinternet.com"}
        make new attachment with properties {file name:theAttachment1} at after the last paragraph

        (* change save to send to send*)
        save --<<<<---------------- change save to send to send
        (* change save to send to send*)
    end tell
end tell

路径可以是Unix路径:“/ Users / USERNAME / Desktop / Desktop - IMAGE / scooter-6.jpg” 或Posix文件路径:“Macintosh HD:用户:USERNAME:桌面:桌面 - 图片:scooter-6.jpg”

在这个脚本中,我将路径从Unix路径转换为Posix文件路径