我使用兑换库将约会同步到 Outlook 日历
下面是将默认日历设置为Outlook约会项目的Vb代码。
默认情况下,它从 Outlook 中选择默认日历 .但是我需要使用我在Outlook中添加到约会项目的日历名称设置自己的日历。
Dim objAppointmentRecord As Object 'Outlook.AppointmentItem
objAppointmentRecord = Redemption.RedemptionLoader.new_SafeAppointmentItem
Dim objAppointmentFolder As Object 'Outlook.MAPIFolder
objAppointmentFolder = Redemption.RedemptionLoader.new_MAPIFolder
objAppointmentFolder = modMain.gobjMAPI.GetDefaultFolder(9)
objAppointmentRecord = objAppointmentFolder.Items.Add ' In this line it is setting default calendar .
我尝试设置我的日历通过循环将测试日历设置为objAppointmentRecord。
Dim objNavGroup
Dim objNavFolder
Dim objNavMod
Dim objSelectedCal = objAppointmentFolder.Items
objNavMod = objAppointmentFolder.GetExplorer.NavigationPane.Modules.GetNavigationModule(1)
For Each objNavGroup In objNavMod.NavigationGroups
For Each objNavFolder In objNavGroup.NavigationFolders
If objNavFolder.DisplayName = "TestCalendar" Then
objSelectedCal = objNavFolder
GoTo ExitFromCalLoop
End If
Next
Next
ExitFromCalLoop:
objAppointmentRecord = Redemption.RedemptionLoader.new_MAPIFolder.Items.Add(objSelectedCal)
在最后一行设置objAppointmentRecord与我的测试日历,但这种方法没有选择我的日历。
有没有办法选择日历直接约会记录或任何新方法请建议我.
我期待你的回复。
首先,不要使用 Redemption.MAPIFolder
对象 - 它已被弃用。创建 RDOSession
对象的实例,并将其 MAPIOBJECT
属性设置为 Namespace.MAPIOBJECT
返回的值。
如果您有来自 OOM Outlook.MAPIFolder
对象,并且想要在 Redemption 中打开它,请调用 RDOSession.GetFolderFromID
或 RDOSession.GetRDOObjectFromOutlookObject
。
终于从重新转储支持中得到了答案,以在Outlook中选择用户定义的日历进行同步
objAppointmentFolder = modMain.gobjMAPI.GetDefaultFolder(9).Folders.Item(“My Folder Name”)