MacOSX: новая почта с вложением - PullRequest
5 голосов
/ 21 октября 2010

Я хочу создать новое письмо с помощью почтового клиента по умолчанию и автоматически прикрепить к нему файл.

Чтобы создать новое письмо для dummy@somewhere.com с темой foo и телом bar, я могу сделать следующее:

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

Как мне теперь прикрепить файл?

Если это невозможно (с open), каковы мои альтернативы?

Я бы предпочел решение, которое работает как на Java, так и на родных языках (C ++, ObjC). Так что, если через оболочку есть способ сделать это, это будет легко, так как я могу просто вызвать такой прогресс.

В противном случае мне пришлось бы прибегнуть к какой-нибудь SMTP-машине и просто написать собственного небольшого отправителя почты.

1 Ответ

2 голосов
/ 21 октября 2010

Вы можете сделать это через AppleScript, например,

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

Если у вас нет способа запустить AppleScript напрямую, вы можете использовать osascript через командную строку, например,

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...