开发者

MacOSX: new mail with attachment

开发者 https://www.devze.com 2023-01-21 07:19 出处:网络
I want to create a new mail with the default mail client and attach a file automatically to it. To cre开发者_如何转开发ate a new mail to dummy@somewhere.com with subject foo and body bar, I can do th

I want to create a new mail with the default mail client and attach a file automatically to it.

To cre开发者_如何转开发ate a new mail to dummy@somewhere.com with subject foo and body bar, I can do the following:

open "mailto:dummy@somewhere.com?subject=foo&body=bar"

How can I attach a file now?

If this is not possible this way (with open), what are my alternatives?

I would prefer a solution which works in Java as well as in native languages (C++, ObjC). So if there is a way via shell to do this, this would make it easy as I can just spawn such a progress.

Otherwise I would have to fall back to some SMTP engine and just write an own small mail sender.


You can do this via AppleScript, e.g.

tell application "Mail"
    set msg to make new outgoing message with properties {subject:"Test", visible:true}
    tell msg to make new to recipient with properties {address:"someone@somewhere.com"}
    tell msg to make new attachment with properties {file name:"Macintosh HD:Users:me:my_file.txt" as alias}
end tell

If you don't have any way to run AppleScript directly then you can use osascript via the command line, e.g.

osascript <<EOF
tell application "Mail"
    set msg to make new outgoing message with properties {subject:"Test", visible:true}
    tell msg to make new to recipient with properties {address:"someone@somewhere.com"}
    tell msg to make new attachment with properties {file name:"Macintosh HD:Users:me:my_file.txt" as alias}
end tell
EOF
0

精彩评论

暂无评论...
验证码 换一张
取 消