У меня есть надстройка Outlook, которая перемещает элемент электронной почты в другую папку в другом почтовом ящике.По крайней мере, раньше это делало.Теперь это больше не двигает это.Я написал другую тестовую надстройку, которая перемещает элемент электронной почты в другую папку в почтовом ящике текущего пользователя, и он действительно работает, поэтому я задаюсь вопросом: есть ли какие-либо вопросы о перемещении элементов в другой почтовый ящик, которые вызывают проблемы?
Вот некоторый код для объяснения вещей:
Чтобы выполнить перемещение в другой почтовый ящик, код создает хранилища для каждого почтового ящика, используя эту строку,
stores = Globals.ThisAddIn.OutlookApplication.GetNamespace("MAPI").Stores;
, затем выполняет итерацию по каждому хранилищу, используяцикл foreach,
foreach (Outlook.Store store in stores)
Получает текущий входной почтовый ящик, для использования позже,
destinationMailboxFolderInbox = (Outlook.Folder)store.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
Если это имя хранилища DisplayName совпадает с тем, которое я указал в качестве места назначения, оно переходит к поискуподпапки для нужной мне папки,
if (store.DisplayName.Equals(destinationMailbox))
{
foreach (Outlook.Folder myFolder in destinationMailboxFolderInbox.Folders)
{
if (myFolder.Name.Equals(destinationMailboxFolder))
{
item.Move(myFolder);
Проблема в том, что, похоже, не запускается последний цикл foreach (цикл по папкам).
Как я уже сказал, он работает, когдаЯ изменил его, чтобы использовать почтовый ящик моего текущего пользователя.Он не работает, когда я устанавливаю его в общий почтовый ящик, к которому у текущего пользователя есть доступ.
Есть ли какой-то другой шаг, который мне не хватает?