我尝试使用RRULE属性时遇到问题
|
对于没有重现的约会,以下代码可以很好地工作。正常工作是指使用此代码发送电子邮件时,它会在正确的时间段,正确的日期正确显示在Outlook日历上。服务器位于中央时区,最终用户位于各个时区。
Const VCAL_FILE =
\"BEGIN:VCALENDAR\" & vbCrLf &
\"METHOD:PUBLISH\" & vbCrLf &
\"PRODID:Microsoft CDO for Microsoft Exchange\" & vbCrLf &
\"VERSION:2.0\" & vbCrLf &
\"BEGIN:VTIMEZONE\" & vbCrLf &
\"TZID:(GMT-06.00) Central Time (US & Canada)\" & vbCrLf &
\"X-MICROSOFT-CDO-TZID:11\" & vbCrLf &
\"BEGIN:STANDARD\" & vbCrLf &
\"DTSTART:16010101T020000\" & vbCrLf &
\"TZOFFSETFROM:-0500\" & vbCrLf &
\"TZOFFSETTO:-0600\" & vbCrLf &
\"RRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=11;BYDAY=1SU\" & vbCrLf &
\"END:STANDARD\" & vbCrLf &
\"BEGIN:DAYLIGHT\" & vbCrLf &
\"DTSTART:16010101T020000\" & vbCrLf &
\"TZOFFSETFROM:-0600\" & vbCrLf &
\"TZOFFSETTO:-0500\" & vbCrLf &
\"RRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=3;BYDAY=2SU\" & vbCrLf &
\"END:DAYLIGHT\" & vbCrLf &
\"END:VTIMEZONE\" & vbCrLf &
\"BEGIN:VEVENT\" & vbCrLf &
\"DTSTAMP:{8}\" & vbCrLf &
\"DTSTART:{0}\" & vbCrLf &
\"DTEND:{1}\" & vbCrLf &
\"DESCRIPTION:{6}\\N\" & vbCrLf &
\"SUMMARY:{7}\" & vbCrLf &
\"UID:{5}\" & vbCrLf &
\"ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=FALSE;CN=\"\"{9}\"\":MAILTO:{9}\" & vbCrLf &
\"ACTION;RSVP=FALSE;CN=\"\"{4}\"\":MAILTO:{4}\" & vbCrLf &
\"LOCATION:{2}\" & vbCrLf &
\"SEQUENCE:1\" & vbCrLf &
\"PRIORITY:5\" & vbCrLf &
\"CLASS:\" & vbCrLf &
\"CREATED:{8}\" & vbCrLf &
\"LAST-MODIFIED:{8}\" & vbCrLf &
\"STATUS:CONFIRMED\" & vbCrLf &
\"TRANSP:OPAQUE\" & vbCrLf &
\"X-MICROSOFT-CDO-BUSYSTATUS:FREE\" & vbCrLf &
\"X-MICROSOFT-CDO-INSTTYPE:0\" & vbCrLf &
\"X-MICROSOFT-CDO-INTENDEDSTATUS:FREE\" & vbCrLf &
\"X-MICROSOFT-CDO-ALLDAYEVENT:FALSE\" & vbCrLf &
\"X-MICROSOFT-CDO-IMPORTANCE:1\" & vbCrLf &
\"X-MICROSOFT-CDO-OWNERAPPTID:-1\" & vbCrLf &
\"X-MICROSOFT-CDO-ATTENDEE-CRITICAL-CHANGE:{8}\" & vbCrLf &
\"X-MICROSOFT-CDO-OWNER-CRITICAL-CHANGE:{8}\" & vbCrLf &
\"BEGIN:VALARM\" & vbCrLf &
\"ACTION:DISPLAY\" & vbCrLf &
\"DESCRIPTION:REMINDER\" & vbCrLf &
\"TRIGGER;RELATED=START:-PT00H15M00S\" & vbCrLf &
\"END:VALARM\" & vbCrLf &
\"END:VEVENT\" & vbCrLf &
\"END:VCALENDAR\" & vbCrLf
但是,当我添加以下行时
\"RRULE:{10}\" & vbCrLf &
到VEVENT部分,似乎会忽略TZOFFSETFROM和TZOFFSETTO。换句话说,将事件添加到我的Outlook日历后,时间到了。
因此,我的问题是,当使用RRULE属性时,为什么导入到Outlook中时我的日历事件未在正确的时隙中显示,但是当不使用RRULE属性时,时间是否完美?
任何想法或想法都将不胜感激。
忘了提及,\“ RRULE:{10} \”实际上类似于\“ RRULE:FREQ = YEARLY \”。
没有找到相关结果
已邀请:
0 个回复