2013-05-01 2 views
0

Я пытаюсь найти способ доступа к связанной общей папке из любимой папки. Цель состоит в том, чтобы автоматически отправлять письма в общие папки. В случае, когда эта папка была определена как избранная, я хотел бы переместить почту в эту любимую папку для проблем с производительностью.Oulook script - Как найти корневую папку в любимой папке

Связанный путь общих папок просто виден в Outlook в свойствах избранных папок (щелкните правой кнопкой мыши по папке, затем свойства/сводка: здесь показан путь к общей папке), но я не могу найти способ получить доступ к информация программно ...

Я был бы очень признателен за вашу помощь!

Большое спасибо,

Гийом

ответ

0

Я использовал EWS для доступа к PR_FAV_PUBLIC_SOURCE_KEY с помощью ExtendedPropertyDefinition

new ExtendedPropertyDefinition(0x7C02, MapiPropertyType.Binary); 

преобразовывая его въездной идентификатор должен привести вас к правильной папки. Детали: http://social.technet.microsoft.com/Forums/de-DE/exchangesvrdevelopmentlegacy/thread/e75940c6-b53b-4260-b12c-6541e4ff8a69

И есть более любимые специфические свойства, такие как:

private ExtendedPropertyDefinition eProp_LevelMask = new ExtendedPropertyDefinition(0x7D03, MapiPropertyType.Integer); 
    private ExtendedPropertyDefinition eProp_ShortcutType = new ExtendedPropertyDefinition(0x7D09, MapiPropertyType.String); 
    private ExtendedPropertyDefinition eProp_FavParent = new ExtendedPropertyDefinition(0x7D02, MapiPropertyType.Binary); 

и

private ExtendedPropertyDefinition eProp_ShortcutName = new ExtendedPropertyDefinition(0x7C00, MapiPropertyType.String); 
    private ExtendedPropertyDefinition eProp_ShortcutAlias = new ExtendedPropertyDefinition(0x7C01, MapiPropertyType.String); 
+0

Спасибо вам большое за ваше Помогите. Я новичок, и я пишу скрипты в VBA. Этот код C правильно? Знаете ли вы, как создавать скрипты в Visual Basic? Спасибо – user2341018

+0

Извините, не знаю много о EWS и VBA. Но вы все равно можете получить доступ к расширенным свойствам через PropertyAccessor, я думаю ... Подробнее: http://msdn.microsoft.com/de-de/library/office/ff869865.aspx –

-1

Sub example1() Dim strFinal As String Dim strline As String

Открыть «D: \ textfile.txt» для ввода как # 1 W отя EOF (1) = False Line Input # 1, strline If Len (strline)> 24 Тогда strFinal = strFinal + ModifyColumn (strline) Else strFinal = strFinal + strline + vbCrLf End If Венд strFinal = strFinal Закрыть # 1

Открыть "D: \ textfile.txt" Для выхода As # 1 Печать # 1, strFinal Закрыть # 1 End Sub

Функция ModifyColumn (ByVal strInput As String) As String дим arrString() As String дим strOutput As String 'разделить столбцы arrString = Split (strInput, vbTab) ' конкатенации первые 2 столбца, поскольку они являются strOutput = arrString (0) + vbTab + arrString (1) + vbTab + arrString (2) 'добавить 100 $ в столбец3 requirevalue = Влево (arrString (3), InStr (1, arrString (3), "|") - 1) last3Digit = Right (requirevalue, 3) Если Left (requirevalue, 3) = "max", то Newvalue = vbTab + "OTPxxxxxx" & last3Digit & "|" & Right (arrString (3), Len (arrString (3)) - InStr (1, arrString (3), "|")) + vbCrLf Else NEWVALUE = vbTab + arrString (3) + vbCrLf End If strOutput = strOutput & Newvalue 'strOutput = strOutput + Strings.Обрезка (Str (CDbl (левый (arrString (3), Len (arrString (2)) - 1)) + 100)) + "$" + vbCrLf ModifyColumn = strOutput End Function

Смежные вопросы