Bildekreditt: Ciaran Griffin/Stockbyte/Getty Images
Når du sender invitasjoner med Apples iCal-program, mottar mottakeren en e-post med vedlagt .ics-fil som lar mottakeren legge til hendelsen i kalenderen sin og godta eller avslå invitasjon. Når du sender ut disse invitasjonene til en Outlook-bruker, går funksjonaliteten tapt i oversettelsen og er ikke riktig formatert eller tilgjengelig med Microsoft Outlook. Å redigere måten iCal sender ut invitasjonene på, om enn en skremmende oppgave, bidrar til å forbedre Mac- og PC-samhandlingen.
Trinn 1
Åpne Programmer-mappen. Naviger til iCal-applikasjonen. Høyreklikk (kontroll-klikk) iCal-ikonet og velg "Vis pakkeinnhold".
Dagens video
Steg 2
Naviger gjennom iCals innhold til "Ressurser". Finn "Mail.applescript" i "Ressurser"-mappen.
Trinn 3
Uthev "Mail.applescript." Fra menylinjen velger du "Rediger" > "Kopier". På skrivebordet limer du inn ("Rediger" > "Lim inn") filen som en sikkerhetskopi. Gå tilbake til den opprinnelige "Mail.applescript."
Trinn 4
Høyreklikk på filen og velg "Åpne med AppleScript." AppleScript Editor åpnes.
Trinn 5
Naviger omtrent midtveis ned i skriptet til overskriften "på send_mail_sbrp (subjectLine, messageText, myrecipient, invitationPath." Marker hele delen som starter med den overskriften og slutter med «end send_mail_sbrp» og trykk «Slett». (Ikke bekymre deg, du laget en sikkerhetskopi i trinn 3).
Trinn 6
Marker, kopier og lim inn hele følgende oppføring i AppleScript i stedet for oppføringen du slettet i trinn 5:
på send_mail_sbrp (subjectLine, messageText, myrecipient, invitationPath) sett pfile til POSIX fil invitationPath sett myfile til pfile som alias
prøv -- definer en vognretur satt cr til (ASCII-tegn 13) & (ASCII-tegn 10)
-- hent brukerens navn og e-post satt listOfAccounts til {}
fortell applikasjonen "Mail" gjenta med én konto i hver konto sett ListOfAccounts til ListOfAccounts & ¬ {"\"" & (få fullt navn i oneAccount) & "\" "} end repeat end fortelle
hvis ((hent lengden på listenOfAccounts) er 1) setter du AccountTouse for å få det første elementet av ListOfAccounts, ellers setter AccountTouse til ¬ velg fra listen ListOfAccounts ¬ standardelementer (få det første elementet i listenOfAccounts) ¬ med ledeteksten ¬ "Vennligst velg hvilken e-postkonto du vil sende invitasjonen fra:" ¬ uten flere valg tillatt og tomt valg tillatt slutt om
-- åpne og les iCal-hendelsesfilen for å sette inn i en e-post, sett myEventFileHandle til å åpne for få tilgang til min fil uten skrivetillatelse sett myEventFileContent til å lese myEventFileHandle lukke myEventFileHandle
-- forhåndsvent e-postoverskrifter til hendelsesinnholdet sett minNewEmailText til ¬ "Subject: " & subjectLine & cr & ¬ "Fra: " & theAccountTouse & cr & ¬ "Til: " & myrecipient & cr & ¬ "content-class: urn: content-classes: calendarmessage" & cr & ¬ "Content-Type: text/calendar;" & cr & ¬ " method=REQUEST;" & cr & ¬ " name=\"meeting.ics\"" & cr & ¬ "Content-Transfer-Encoding: 8bit" & cr & cr & ¬ myEventFileContent
-- lag et tilfeldig hendelsesfilnavn satt tempMailName til (tilfeldig tall fra 1 til 1000000) & ".ics" sett aliasTempMail til "/tmp/" & tempMailName
-- skriv den nye e-posten til en midlertidig fil sett myEventFileHandle til ¬ åpen for tilgang (POSIX-filaliasTempMail som streng) med skrivetillatelse skriv myNewEmailText fra 1 til myEventFileHandle lukk myEventFileHandle
-- bruk SENDMAIL for å sende filen med riktige overskrifter do shell script "sendmail < " & aliasTempMail
-- slett den midlertidige filen do shell script "rm" & aliasTempMail ved feil errMsg display dialog errMsg end try end send_mail_sbrp
Trinn 7
Velg "Kompiler" fra navigasjonsverktøylinjen. Velg "Lagre" og avslutt AppleScript.
Trinn 8
Send ut en iCal-invitasjon. Windows-brukeren med Microsoft Outlook vil motta iCal-invitasjonene dine på riktig måte nå.
Ting du trenger
Apple Mac OS X
iCal
Post
Advarsel
Vær ekstremt forsiktig når du redigerer AppleScript. Hvis du har gjort en feil, erstatt "mail.applescript"-filen i iCals Ressurser-mappen med den du lagret på skrivebordet, og start prosessen på nytt fra begynnelsen.