AppleScript에서 메일 폴더를 요청하는 방법은 무엇입니까? 사람이 나를

이 질문이 길어질 것이므로 미리 사과드립니다. 나는 applescript 지식을 가진 사람이 나를 도울 수 있기를 바랍니다. 나는 내 Windows 컴퓨터 전체를 Apple로 이전하고 있으며, 마지막으로 조금 짜증나는 일로 막혀 있습니다. Outlook 내에서 메일을 보내면 메일을 보낼 위치를 묻는 매크로가 있습니다. 저는 프로젝트를 별도의 폴더에 저장하고 들어오고 나가는 메일을 함께 가지고 있습니다. BTW를 보내는 항목의 대부분은 휴지통 폴더로 이동합니다. 즉, 보낸 편지함 폴더는 항상 비어 있습니다.

참조 목적으로 아래에 원래 매크로를 첨부합니다.

규칙을 통해이 작업을 시도했지만 Mail이 보낸 항목에 대한 규칙을 지원하지 않는다는 점을 이해했습니다. 그렇다면 나는 automator와 applescript로 끝났다. 선택한 메일을 특정 (사전 설정) 폴더로 옮기는 인터넷에서 몇 가지 예를 발견했습니다. 그게 내가 필요한 건 아니지만, 내가 사용할 폴더가있을 때마다 저에게 묻기 위해 스크립트가 필요합니다.

내가 찾을 수없는 다음 일은 메일을 보낼 때 일종의 자동 트리거입니다. 예를 들어 “메일이 보낸 메일에 저장 될 때”옵션을 통해 가능할 수 있습니다. 아니면 비슷한. 다음으로 가장 좋은 것은 매크로를 시작하는 키 보드 바로 가기입니다.이 방법은 보낸 메일을 특정 폴더로 이동하여 수동으로 수행하는 것과 거의 비슷합니다.

어쨌든, 제 질문은 분명히 드러나기를 바랍니다. 그리고 당신 사이의 지능형 애플 스크립트 전문가는 이것을 처리 할 방법이 있습니다.

미리 감사드립니다.

Arnoud


Windows OUTLOOK 설정에 사용 된 본래 VBA 코드의 사본

Dim objFolder As MAPIFolder

 ' Variable declaration
 Dim objNS As NameSpace
 Dim colKeywords As New Collection
 Dim vntRecipients As Variant
 Dim bolExternalEmail As Boolean

 ' Set variables
 Set objNS = Application.GetNamespace("MAPI")

 ' Set up list of keywords that you use when attaching files
 colKeywords.Add "attachement"
 colKeywords.Add "Attachement"
 colKeywords.Add "attached"
 colKeywords.Add "Attached"

 ' Check for attechment keywords and check for number of attachments
 If checkForKeywords(colKeywords, Item.Body) And (Item.Attachments.Count = 0) Then

 ' If attachments should be in email ask for continue
 If MsgBox("Attachement missing. Send e-mail anyway?", vbYesNo) = vbNo Then
 Cancel = True
 Exit Sub
 End If

 End If

 ' Check for subject
 If Item.Subject = "" Then
 MsgBox "Please specify a subject"
 Cancel = True
 Exit Sub
 End If

 ' Only enable actions for emails
 If Item.Class = olMail Then

 ' Get folder to save email
 Set objFolder = objNS.PickFolder

 ' Check if folder has been specified
 If TypeName(objFolder) <> "Nothing" Then

 ' If folder has been specified move email
 Set Item.SaveSentMessageFolder = objFolder
 Else
 ' Otherwise do not send email and get back to email
 Cancel = True
 End If

 End If

send_message:
 ' Unset everything
 Set objFolder = Nothing
 Set objNS = Nothing

End Sub



답변

AppleScript로 원하는 작업을 수행 할 수 있는지 여부는 알 수 없지만 Apple Mail 플러그인이 있습니다. 메일 허브 그것은 당신이 원하는 것을 할뿐만 아니라 추가 기능을 추가 할 것입니다. 나는 만족 한 고객이다.


답변