Как решить с помощью средства обновления календаря Exchange на летнее время

Переводы статьи Переводы статьи
Код статьи: 941018 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

ВВЕДЕНИЕ

Летнее время — это система для установки часов вперед таким образом, Восход и закат происходят на более поздних час. Результатом является более летнего вечером. Во многих странах Обратите внимание на летнее время. Большая часть этих стран имеет свои собственные правила и нормативы по летнее время начинается и заканчивается.

Даты летнего времени (DST) может изменяться из года в год. Microsoft Outlook пользователи должны обновить свой календарь Outlook каждый раз при изменении правила перехода на летнее время. Даты между предыдущие правила перехода на летнее время и текущие правила перехода на летнее время, называются в статье «периода летнего времени.»

В этой статье описаны действия, которые можно предпринять для элементов календаря адресов в Outlook, возникающих во время периода летнего времени. В данной статье также описываются действия, которые следует выполнить для обновления элементов календаря, которые сохранены в Microsoft Exchange Server в новые правила перехода на летнее время. Решение, представленных в этой статье включает в себя средства обновления календаря Exchange Microsoft («Exchange средство»).

Дополнительные сведения о том, как подготовить изменения в летнее время в 2007 (DST 2007) для всех уязвимых продуктов корпорации Майкрософт посетите следующий веб-узел корпорации Майкрософт:
http://support.Microsoft.com/gp/cp_dst
В 2011 г. правительство России применяет закон отменить летнее время (DST). Дополнительные сведения см. на веб-узле корпорации Майкрософт по адресу:
http://support.Microsoft.com/gp/cp_dst#tab0
Дополнительные сведения на русском языке посетите следующий веб-узел корпорации Майкрософт:
http://support.Microsoft.com/gp/cp_dst/ru#tab0

Дополнительная информация

О средстве Exchange

После установки обновлений периода летнего времени для Microsoft Windows, проходящим через час все старые встречи, возникающих во время периодов летнего времени изменения могут отображаться неправильно. Это справедливо и для повторяющихся и одного экземпляра встречи. Таким образом, они будут правильно отображаться в Outlook, Microsoft Office Outlook Web Access и приложения, основанные на объекты совместной работы (CDO), необходимо обновить эти встречи.

Outlook предоставляет средство, которое называется средство обновления данных часовых поясах для Microsoft Office Outlook ("мастер"). Это средство позволяет пользователям обновлять свои собственные календари.

Дополнительные сведения о средстве обновления данных часового пояса щелкните следующий номер статьи базы знаний Майкрософт:
931667 Порядок изменения летнего времени в 2007 с помощью средства обновления данных часового пояса для Microsoft Office Outlook
Средство обновления календаря Exchange («Exchange средство») позволяет избежать трудностей, с которыми сталкиваются Администраторы в широкое развертывание средства Outlook для всех пользователей и убедившись, что каждый пользователь запускает средство Outlook правильно.

Подробное описание этого средства Exchange

Программа Exchange состоит из двух отдельных исполняемых файлов. В следующей таблице описаны эти файлы.
Свернуть эту таблицуРазвернуть эту таблицу
Имя файла Описание
Msextmz.exe Этот исполняемый файл извлекает сведения о часовом поясе из почтовых ящиков на сервере, на котором выполняется Exchange Server. Этот исполняемый файл, также обновляет календари почтового ящика для указанного списка пользователей.
Msextmzcfg.exe Этот исполняемый файл — это средство конфигурации, выполняет большинство действий, выполняемых при обновлении сервера Exchange Server.

О новой версии средства Exchange

На основе отзывов, была выпущена новая версия средства Exchange 13 августа 2007 г. В данной статье относится к новой версии средства Exchange. При использовании старой версии программы Exchange, удалите его и установите новую версию.

Новая версия средства Exchange включает следующие улучшения:
  • Извлечение часового пояса и календарь обновления процессов aresped до fourfold.
  • Morestreamlined — интерфейс пользователя для средства настройки и интуитивно понятным.
  • Возможность обновления конференц-залов и resourcemailboxes теперь встроена в средства настройки.
  • Возможность обновления пользовательских почтовых ящиков теперь встроена в средства theconfiguration.
  • Устранение неполадок документ будет включен с помощью средства theExchange, и он встроен в программу настройки.
  • Повышение handlingcapabilities алгоритм и Ошибка извлечения часового пояса.
  • Процесс ведения журнала является более удобным для пользователей.

Риск запуска средства Exchange

При запуске средства Exchange, есть риск, что встреч одного экземпляра не может обновляться неправильно. Например один экземпляр встречи, созданные после обновления операционной системы пользователя обновляется неправильно.

Чтобы уменьшить этот риск, воспользуйтесь одним из следующих способов:
  • Уменьшите интервал между временем, вы updateclient компьютеры и обновлении календарей почтовых ящиков.
  • Если компьютеры в организации были обновлены много timeago, используйте параметр Только обновления повторяющихся собраний вдополнительных параметрах.

    Как правило люди сделать не экземпляр createsingle встречи много месяцев вперед. Таким образом Если DSTupdates были установлены много месяцев, большая часть падения meetingsthat экземпляра в пределах периода летнего времени будет были созданы с помощью правил перехода newDST. Для обновления этих встреч нет.
  • Если вы знаете точную дату при обновлении всех computerswere клиента, используйте параметр Дата обновления операционной системы вдополнительных параметрах. Если задана дата, один instanceappointments, которые были созданы после этой даты не обновляются с помощью Exchangetool.
Примечание Если запустить средство Outlook или Exchange на клиентском компьютере под управлением Windows Vista и запустите средство для почтовых ящиков, где Домашний часовой пояс — стандартное время новой Зеландии, необходимо запустить средство во второй раз, начиная с 1 января 2008 года. Дополнительные сведения см. в разделе «Известные проблемы».

Параметры обновления почтовых ящиков

В следующей таблице перечислены пять параметров, которые можно использовать для обновления почтовых ящиков пользователей для использования правил для часовых поясов DST 2007.
Свернуть эту таблицуРазвернуть эту таблицу
Параметр Специалисты Недостатки
Распространять программой Outlook для каждого пользователя, а затем дать пользователям возможность обновлять свои почтовые ящики. Этот параметр позволяет избежать риска, связанного с запуском средства Exchange. Трудно гарантировать, что все пользователи будут использовать средство Outlook правильно и своевременно.

Пользователи, у которых нет Outlook не сможет запустить программу Outlook.

Необходимо сделать дополнительные образовательные усилия, чтобы уменьшить путаницу для пользователей.
Запустите средство Exchange для всех соответствующих пользователей и серверов. Этот параметр обеспечивает удобный для пользователей. Нет рисков, связанных с запуском средства Exchange, как описано в разделе «Риск запуска средства Exchange».
Запустите средство Exchange для обновления только повторяющиеся встречи. Пользователи могут обновить встречи экземпляра в свои почтовые ящики с помощью программы Outlook. Есть меньше риск неправильного обновления экземпляра встречи. Недостатки программы Outlook комбинируются с недостатков программы Exchange.
Запустить средство Exchange ни программой Outlook. Попросите пользователей изучить их календарей и повторно зарегистрировать встреч при необходимости. Этот параметр позволяет избежать риска, связанного с запуском средства Exchange. Если всем пользователям повторно книги всех встреч, некоторые элементы календаря будут один час выключить во время периода летнего времени.

Необходимо сделать дополнительные образовательные усилия, чтобы уменьшить путаницу для пользователей.
Распространять программой Outlook для каждого пользователя, а затем дать пользователям возможность обновлять свои почтовые ящики. Выберите режим извлечения часового пояса средства Exchange для определения выполнения программой Outlook для пользователей.

Если пользователи не работают с программой Outlook, администратор может запустить средство Exchange.
Этот параметр снижает риск пользователей нет программы своевременно и помогает избежать риска, связанного с запуском средства Exchange. Это не параметр, если пользователи работают с Microsoft Office Outlook 2007.

Как установить средства Exchange

Средство обновления календаря Exchange доступен для загрузки в формате самораскрывающийся исполняемый файл (Msextmz.exe). Данное средство доступно для загрузки из центра загрузки Майкрософт:

Свернуть это изображениеРазвернуть это изображение
Загрузить
Загрузите средство обновления календаря Exchange.

Помогает установить и использовать средство Exchange создается виртуальная машина. Виртуальная машина основана на Microsoft Windows Server 2003, Outlook 2007, Microsoft Office Excel 2007 и Microsoft Office Word 2007. Виртуальная машина работает в обоих Microsoft Virtual PC 2004 и Microsoft Virtual Server 2005 R2.

Дополнительные сведения о виртуальной машине для средства обновления календаря Exchange щелкните следующий номер статьи базы знаний Майкрософт:
933185 Виртуальная машина доступна для развертывания обновления календаря летнего времени 2007 в организацию Exchange
Для получения дополнительных сведений о том, как загрузить файлы поддержки Майкрософт, щелкните следующий номер статьи базы знаний Майкрософт:
119591 Как загрузить файлы поддержки Microsoft через оперативные службы
Корпорация Майкрософт проверила этот файл на наличие вирусов. Корпорация Майкрософт использует последние антивирусные программы на дату, которая была учтена в файл. Файл хранится на защищенных серверах, что предотвращает внесение несанкционированных изменений в файл.

Языки, которые поддерживаются программой Exchange

Средство Exchange доступна только на английском языке. Средство будет работать только на компьютере с английской (США).

Версии Exchange Server, которые совместимы со средством Exchange

Средство Exchange можно обновить почтовые ящики в следующих версиях Exchange Server.
  • Microsoft Exchange Server 2007 Enterprise Edition
  • Microsoft Exchange Server 2007 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Server Enterprise Edition
  • Microsoft Exchange 2000 Server Standard Edition

Операционные системы, которые поддерживаются программой Exchange

Средство Exchange будет запускаться в 32-разрядных версиях операционных систем.
  • Microsoft Windows Server 2003
  • Microsoft Windows XP
  • Windows Vista

Что делать перед запуском средства Exchange

Установка обновлений

Перед запуском средства Exchange, убедитесь, что правильно обновлены клиентские и серверные компьютеры. Для этого установите обновление летнего времени Windows на клиентских компьютерах и серверах. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
942763 Накопительное обновление часового пояса для операционных систем Microsoft Windows, выпущенное в декабре 2007 г.

Если на компьютере Пакет обновления 2 (SP2) для Microsoft Exchange Server 2003 установите одно или оба из следующих обновлений в зависимости от вашей организации:
  • Обновление 911829
  • Обновление 924334
Дополнительные сведения об этих обновлениях щелкните приведенные ниже номера статей базы знаний Майкрософт:
911829 Сообщение об ошибке при попытке выполнения задач редактирования, или необходимо нажать кнопку для активации окна создания сообщения в Outlook Web Access
924334 Форма создания сообщений перестает отвечать на запросы после установки Internet Explorer 7.0 и управления S/MIME на клиенте Outlook Web Access в Exchange Server 2003
Если пользователи находятся в пределах Иерусалима Центральная Бразилия и Южная Америка E. часового пояса, пожалуйста, прочитайте руководство в следующей статье базы знаний Майкрософт:

943390 Некоторые элементы календаря Outlook неправильно преобразовываются при использовании средстве обновления данных часового пояса Outlook с учетом изменений на летнее время в некоторых часовых поясах

Проверка системных требований

Необходимо запустить средство Exchange только на компьютере, для которых выполняются следующие условия:
  • На компьютере установлен с Microsoft Office Outlook 2003 пакетом обновления 2 (SP2) или Microsoft Office Outlook 2007 установлен.
  • На компьютере установлен Toolinstalled данных часовых поясов Outlook.
  • Microsoft платформа.NET Framework версии 2.0 установлена на компьютере отказа.
Не удается запустить средство Exchange на компьютере под управлением Exchange Server или средства управления системой Exchange. Если при попытке установить программу Exchange на компьютере под управлением Exchange Server или средства управления системой Exchange, появляется следующее сообщение об ошибке:
Средства обновления календаря Exchange нельзя установить с помощью Microsoft Exchange.

Проверьте разрешения и другие требования пользователей

Убедитесь, что выполняются следующие условия:
  • Администрирование хранилища информации обновляются разрешения для каждой базы данных сообщений ExchangeServer (MDB).
  • Отправьте как разрешения для всех почтовых ящиков areupdated.
  • Разрешения полного доступа к почтовому ящику для всех почтовых ящиков areupdated.
  • Разрешения локального администратора, предоставляются на computerthat является запуск средства Exchange.

Сценарий «Предоставить право почтового ящика»

Пример GrantMailboxPermission.vbs сценария можно использовать для предоставления полного доступа к почтовому ящику и отправить как разрешений для всех почтовых ящиков домена.

Этот сценарий может выполняться только администратором Exchange Server на компьютере под управлением Exchange 2000 Server или Exchange Server 2003. Этот сценарий не может выполняться на компьютере, на котором выполняется Exchange Server 2007. Тем не менее можно использовать среду управления Exchange предоставить требуемые разрешения.

Код сценария .vbs приведен в разделе «Ссылки». В следующей таблице описаны два режима, в которых выполняется этот сценарий.
Свернуть эту таблицуРазвернуть эту таблицу
Режим Команда Описание
Добавить CScript GrantMailboxPermission.vbs –add Имя_домена \ Имя_пользователя Имя_файла Эта команда предоставляет Имя_домена \ Имя_пользователя Полный доступ к почтовому ящику и отправить как разрешения пользователей к почтовым ящикам пользователя, указанные во входном файле.

Входной файл должен быть текстовый файл, содержащий устаревшие доменные имена почтовых ящиков пользователей. Эти имена должны быть разделены возврат каретки + перевод строки (CRLF).

Сценарий создает файл GrantMailboxPermission.log. Этот файл представляет собой запись почтовых ящиков, которые были обработаны. Первая строка файла журнала Имя_домена \ Имя_пользователя пользователь, получающий доступ. Не удаляйте этот файл. Этот файл используется в режиме удаления.

Если явный доступ, «запретить» назначена пользователю, сценарий записывает сведения в файл с именем «GrantMailboxPermission.err». Сценарий не будет предоставить или изменить разрешения.

Если пользователь является участником группы безопасности, имеющей «запретить» доступ, сценарий предоставляет разрешения полного доступа к почтовому ящику и отправить как. Тем не менее пользователь не сможет войти в почтовый ящик. Все ошибки будут регистрироваться в файле GrantMailboxPermission.err.
Удалить CScript GrantMailboxPermission.vbs –removeЭта команда удаляет разрешения полного доступа к почтовому ящику и отправить как к почтовым ящикам, перечисленных в файле GrantMailboxPermission.log Имя_домена \ Имя_пользователя пользователь. В Имя_домена \ Имя_пользователя задан в файле GrantMailboxPermission.log.
Примечания
  • При выполнении этого сценария на компьютере, который является runningExchange сервера сценарий возвращает символ точки (.), при обработке scriptsuccessfully пользователя. Сценарий возвращает pointcharacter восклицательный знак (!), если сценарий не обрабатывает пользователь успешно.
  • Выходной файл в режиме извлечения часового пояса не использован протоколLDAP как входной файл для этого сценария. Создание входного файла для thisscript, вставьте содержимое выходного файла извлечения часового пояса режим intoNotepad, сохранить содержимое как новый документ и затем использовать новый документ в качестве входного файла.

Использование средства Exchange

Для использования средства Exchange, запустите средство настройки обновления календаря Exchange (Msextmzcfg.exe). Эта программа поможет выполнить весь процесс обновления календарей.

Запустить процесс извлечения часового пояса

Чтобы обновить календари почтовых ящиков, необходимо определить часовой пояс календарей. Процесс извлечения часового пояса проверяет свойства и встреч из почтового ящика календарей для определения их часовых поясов. Чтобы запустить процесс извлечения часового пояса, выполните следующие действия.
  1. На странице приветствия нажмите кнопку Далее.

    Примечание Страница приветствия представляет anddiscusses средство настройки разрешений, необходимых для запуска средства. Ссылка на эту статью alsoprovides страницы.
  2. Укажите параметры для средства настройки. Выделять не менее 200 мегабайт (МБ) дискового пространства tologging Werecommend.

    Если необходимо изменить параметры по умолчанию, нажмите кнопкуДополнительные параметры. Дополнительные сведения о advancedsettings см, следующим за этой процедурой.
  3. Выберите серверы Exchange в локальном лесу Active Directorydirectory службы, которую требуется обновить. Нажмите кнопкуДалее , чтобы начать процесс извлечения часового пояса.

    Примечание Если вы уже выполнили извлечения часового пояса, можно skipthis шаг, нажав кнопку Пропустить.

    Обратите внимание, что отображаются statusbar, ссылка в журнале и в реальном времени отображения процесса zoneextraction, время. После iscomplete процесс извлечения часового пояса нажмите кнопку Далее.

    Если были обнаружены ошибки, отображается в разделе Устранение неполадок документ.
  4. Настройка почтовых ящиков с часовых поясов нет страницы и нажмите кнопку Далее , чтобы проверить calendaritems.

    Примечание Если средство обнаруживает пользователей, которые не имеют почтового ящика уровня propertiesthat указывают их часовой пояс, проверки фактического собраний и appointmentsinside эти календари для определения часового пояса. Можно указать элементы календаря numberof, через которые нужно средство настройки для сканирования. Thelarger число элементов, определяющих, тем больше времени займет сканирование.
  5. На странице разрешения неизвестный часовой пояс displaynames средство предлагает сопоставить часовых поясов, которые распознают средства повышенной часовой пояс операционных систем. После этого нажмите кнопкуДалее
  6. Если средство настройки находит пользователей, которые имеют multipletime зон, вам будет предложено вручную разрешить конфликт, указав onetime зоны, с которой необходимо обновить календарь пользователя. После этого, нажмите кнопкуДалее.
  7. На странице Сохраните DNs почтового ящика с неразрешенным часовых поясов все остальных пользователей, кто еще не zoneinformation время или все еще установлен, сведения о зоне конфликта времени записи ina разделения файла журнала. Нажмите кнопку Далее.
Завершен процесс извлечения часового пояса. Список пользователей и извлечения часовых поясов находится в выходной файл (Output.txt) в каталоге установки.

Дополнительные параметры

В следующей таблице описаны параметры, которые можно настроить на шаге 2 предыдущей процедуры.
Свернуть эту таблицуРазвернуть эту таблицу
ПараметрФункциональные возможностиСценарийВопросыПрименимость
Обновить только повторяющиеся собранияЭтот параметр обновляет только повторяющиеся собрания, на которые влияют изменения периода летнего времени. Независимо от того, является ли они обновлены не обновляются одной копии встреч, которые происходят в пределах периода летнего времени.Используйте этот параметр, если компьютеры в организации были обновлены давно.

Как правило люди не создавайте встреч одного экземпляра много месяцев вперед. Таким образом Если летнее время обновления были установлены много месяцев, большая часть экземпляра собрания, которые попадают в пределах периода летнего времени будет были созданы с помощью новых правил перехода летнего времени. Для обновления этих встреч нет.
Если пользователь создан один экземпляр собрания много месяцев вперед, это собрание не обновляется, если указан этот параметр.Этот параметр применяется ко всем почтовым ящикам, все конференц-залы и все календари пользователей.
Дата установки обновления операционной системыЭтот параметр задает одной копии встреч, которые создаются или обновляются после даты, указанной вами не обновляются.Используйте этот параметр, если известно точную дату, когда были обновлены все клиентские компьютеры.

При этом встреч, созданных после установки обновления, не обновляются. Такие собрания попадает под новые правила часового пояса.
Этот параметр действует только в том случае, если на клиентских компьютерах были обновлены в течение не более 24 часов, а при высокой уязвимости обновления. (Нет проникновение высокий процент компьютеров в организации, которые были обновлены при высокой диапазона 90 процентов.)

Кроме того администраторы могут указать дату только одно обновление. Встречи, созданные в часовых поясов, которые соответствуют определенные обновления и в определенные наборы часовых поясов должны быть обновлены.

Смысл для конференц-залов —, обновляется только конференция комнаты, определенных часовых поясов.

Смысл для пользователей почтовых ящиков является, если не указан параметр SuppressExchange или параметр SuppressAll , обновляются только пользовательские почтовые ящики, принадлежащие определенной часовых поясов.
Этот параметр применяется ко всем почтовым ящикам, все конференц-залы и все календари пользователей.
SuppressExchange и MaxDepthПри задании этих параметров все встречи в календаре пользователя, влияют изменения периода летнего времени обновляться независимо от ли пользователь является организатором этих элементов календаря.

Если пользователь является организатором элемент календаря, обновления не отправляются участникам, у которых есть почтовые ящики Exchange. Обновления отправляются участникам, не имеющим почтовые ящики Exchange.

Параметр MaxDepth указывает степень расширения списка рассылки, определяющая, какие участники имеют почтовых ящиков Exchange, а также какие участников нет.
Используйте этот параметр, если не хотите, чтобы пользователи Exchange для получения обновлений от Организаторам собраний, затрагиваемые периода летнего времени.

Параметр SuppressExchange лучше, чем параметр SuppressAll Если организация имеет системы календаря не Exchange Server и назначенные для включения участников, которые являются внешними для организации.
Обновления собрания не отправляются, только пользователям, не использующим Exchange. Таким образом чтобы убедиться в том, что копии того же собрания обновляются для всех возможных участников, необходимо обновление всех почтовых ящиков в организации.

Это условие может существенно увеличить число почтовых ящиков, которые необходимо обновить. Таким образом можно увеличить время обработки.

Когда списки рассылки больших, вложенные в списке участников, является дорогостоящим процессом для определения участников собрания и определить, имеют ли эти участники почтовых ящиков Exchange. Если указать данный параметр и установить высокое значение для параметра MaxDepth значительные нагрузки может поместить на контроллерах домена.
Этот параметр применяется только к почтовым ящикам пользователей.
SuppressAllЭтот параметр заставляет все встречи в календаре пользователя, влияют изменения периода летнего времени обновляться независимо от ли пользователь является организатором этих элементов календаря.

Если пользователь является организатором элемент календаря, обновления не отправляются участникам.
Используйте этот параметр, если не хотите участников на получение обновлений от Организаторам собраний, затрагиваемые периода летнего времени.Обновления собрания не отправляются. Таким образом чтобы убедиться в том, что копии того же собрания обновляются для всех возможных участников, необходимо обновление всех почтовых ящиков в организации.

Это условие может существенно увеличить число почтовых ящиков, которые необходимо обновить. Таким образом можно увеличить время обработки.

Участники, которые не имеют почтовых ящиков Exchange не получают обновлений. Их встречи не могут быть обновлены, зависит от системы электронной почты, в которой они выполняются и действия, которые принимает администратор сети.
Этот параметр применяется только к почтовым ящикам пользователей.

Обновление почтовых ящиков ресурса и конференц-залов

Необходимо обновить конференц-залов и почтовых ящиков ресурса во избежание конфликтов резервирования. Чтобы сделать это, выполните следующие действия.
  1. На странице « Укажите ресурс и RoomCalendars конференции » введите или вставьте список псевдонимов roomsin конференции организации. Нажмите кнопку Разрешить для проверки псевдонимов и нажмите кнопку Далее.
  2. На странице разрешения часовых поясов для ресурса andConference календари комнаты запрашивается для manuallyspecify часовой пояс для конференц-зале случае конференц-зала nothave часовой пояс. Сделать это и нажмите кнопку Далее.
  3. Для напоминания отображается страница напоминания, toolis хотите обновить календари. Нажмите кнопку Далее.
  4. Обратите внимание, отображается в строке состояния, ссылку на выходные данные журнала и areal время отображения выходных данных средства. Нажмите кнопкуДалее.

    Если обнаружены ошибки, ссылку на thetroubleshooting документ отображается в нижней части этой страницы.

Обновление календаря почтового ящика пользователя

Чтобы сделать это, выполните следующие действия.
  1. На странице Параметры обновления пользователь MailboxCalendars настройте параметры обновления.

    Если вы не указали SuppressExchange илиSuppressAll Дополнительные параметры, выберите часовых поясов, areaffected, переход на летнее время. В противном случае выберите все часовые пояса.

    Нажмите кнопкуДалее.
  2. Для напоминания отображается страница напоминания, toolis хотите обновить календари. Нажмите кнопку Далее.
  3. Обратите внимание, отображается в строке состояния, ссылку на выходные данные журнала и areal время отображения выходных данных средства. После обновления iscomplete нажмите кнопку Далее.

    Если обнаружены ошибки, в разделе Устранение неполадок документ отображается в нижней части thispage.
  4. Нажмите кнопку Готово.

Подкаталоги и файлы журналов Exchange средство

Файлы журнала

Средство Exchange создает следующие файлы журнала в каталоге установки:
  • OUTPUT.txt

    Этот файл содержит список всех почтовых ящиков пользователя thatwere, извлекаются вместе с их сведения о часовом поясе.
  • TimeZoneExtraction.log

    Этот журнал содержит объединенный выход процесса zoneextraction время для всех серверов.
  • ResourceUpdate.log

    Этот журнал содержит выходные данные процесса обновления для конференц-залов и для почтовых ящиков ресурса.
  • UserUpdate.log

    Этот журнал содержит объединенный выход usermailbox процесс обновления для всех серверов.
  • CalendarScan.log

    Этот журнал содержит объединенный выход процесса calendarscan для всех серверов.
  • ConflictUsers.txt

    Этот журнал содержит список пользователей, имеющих conflictingtime зоны. Например свойства почтового ящика пользователя указать, theybelong в различных часовых поясах.
  • NonExistent.txt

    Этот журнал содержит список пользователей, имеющих zoneinformation нет времени.

Вложенные папки

Средство Exchange создает следующие подкаталоги в каталоге установки:
  • Ресурс

    Это является подкаталог рабочего для проектирования обновление конференц-залов и для почтовых ящиков ресурса. Это directorycontains следующие файлы:
    • Msextmz.log

      Это выходной файл средства Exchange для процесса обновления.
    • Errors.txt

      Этот файл содержит список почтовых ящиков.
    • Processed.txt

      Этот файл содержит список почтовых ящиков, которые были успешно обновлены.
    Примечание Все подкаталоги работу этих файлов.

    Подкаталог TheResource также содержит следующие подпапки:
    • Файлы журнала

      Эта подпапка содержит обновление журналов для каждого почтового ящика, который был успешно обновлен. Каждый журнал обновлений должен содержать перечень совещаний, которые были обновлены.
  • Имя_сервера

    Существует один подкаталог для каждого serveron, который извлечения часового пояса или было выполнено обновление календаря.Эти подкаталоги содержат следующие подкаталоги:
    • CalendarScan

      Это подкаталог рабочего процесса сканирования календаря.
    • Извлечь

      Это подкаталог рабочего процесса извлечения часового пояса.
    • Обновление

      Это подкаталог рабочего процесса обновления почтового ящика пользователя. Он содержит следующие подпапки:
      • Файлы журнала

        Эта подпапка содержит обновление журналов для каждого почтового ящика, который был успешно обновлен. Каждый журнал обновлений должен содержать перечень совещаний, которые были обновлены.

Что делать после запуска средства Exchange

После завершения программы от всех серверов Exchange в среде Exchange, применяются соответствующие обновления Exchange Server переход на летнее время. Ниже приведен список упорядочивается по уровень пакета обновления и версии Exchange Server. Установите обновления для используемой версии Exchange Server в порядке.

Exchange Server 2007
940006 Описание накопительного пакета обновления 4 для Exchange Server 2007
Накопительный пакет обновления 4 для Exchange Server 2007 включает в себя следующие исправления летнего времени:
  • 937656 После начала летнего времени (DST) в новой Зеландии в 2007 возникли проблемы в Outlook Web Access для Exchange 2007
  • 932561 Встречи, которые отправляются из одной организации Exchange в другую с помощью Exchange 2007 может быть неправильно на один час, если одна организация находится в часовом поясе Западной Австралии
Exchange Server 2003 с пакетом обновления 2
926666 Обновление для изменения летнего времени в 2007 Пакет обновления 2 для Exchange 2003
931915 Обновление для изменения летнего времени в Ньюфаундленд в 2007 Пакет обновления 2 для Exchange Server 2003
929895 Встречи, которые передаются между организациями Exchange Server может быть неправильным на один час, когда в одной из организаций находится в часовом поясе Западной Австралии
937653 По окончании периода летнего времени для изменений в новой Зеландии 2007 возникают одна или несколько проблем в Exchange Server 2003
Exchange Server 2003 с пакетом обновления 1
940123 Возникли проблемы в Exchange 2003 Пакет обновления 1 после летнего времени (DST) начинается в новой Зеландии в 2007

Известные проблемы

  • Повторяющиеся собрания, которые создаются в Outlook Web Access не обновляются с помощью средства Exchange

    При установке обновлений Exchange Server на сервере theExchange, прежде чем обновить почтовые ящики, повторяющиеся собрания в Outlook Web Access, arecreated не обновляется с помощью средства Exchange.

    Для решения этой проблемы удаления обновлений Exchange Server, запустите программу theExchange и установите обновления для Exchange Server на Exchangeserver.
  • После запуска средства Exchange необходимо перезапустить Exchange 2007

    Для правильного отображения элементов календаря, необходимо restartthe службы Exchange после запуска средства Exchange для inExchange веб-клиента Outlook 2007.
  • Не удается установить средство Exchange

    Не установлены средства Exchange существует ifeither из следующих разделов реестра:
    • HKEY_CLASS_ROOT\Outlook.Application.9
    • HKEY_CLASS_ROOT\Outlook.Application.10
    В этом случае появляется ниже данной ошибки, при попытке установить средства Exchange:
    Не удается установить средства модификации базового адреса Exchange ServerCalendar с этой версией MicrosoftOutlook.
    Чтобы обойти эту проблему, удалите следующие разделы реестра, установить средство Exchange и затем восстановить registrykeys.

    Важно Этот раздел, метод или задача содержит действия, о том, как внести изменения в реестр. Однако при неправильном изменении реестра могут возникнуть серьезные проблемы. Поэтому точно выполняйте следующие действия. Для дополнительной защиты создайте резервную копию реестра перед внесением изменений. Затем при возникновении неполадок можно восстановить реестр. Для дополнительных сведений о способах создания резервной копии и восстановлении реестра щелкните следующий номер статьи базы знаний Майкрософт:
    322756 Как провести резервное копирование и восстановление реестра Windows
  • Нет ограничения на количество почтовых ящиков, которые могут обрабатываться на сервере

    В режиме списка пользователей и извлечения часового пояса mode,Msextmz.exe может обрабатывать только 65 535 почтовые ящики на сервере. Если hasmore сервер более 65 535 почтовые ящики, некоторые почтовые ящики не обрабатываются.
  • Общедоступные папки календари не обновляются.

    Средство Exchange не обновляет открытые Foldercalendars. Сведения о способах обновления общей папки на календарь seethe документации для программы Outlook.
  • В той же среде можно запустить средств Outlook и Exchange

    При запуске средства Exchange для почтового ящика, hasalready был обновлен с помощью средства Outlook, или наоборот, возникают не побочные эффекты. Тем не менее если запустить средство Exchange нет необходимости для пользователей torun программой Outlook отдельно.
  • Появляются напоминания о встречах не позже, чем ожидалось

    Собрание без напоминания для почтовых ящиков обновлен bythe Exchange, средство не обновляются, если Outlook не был подключен в интерактивный режим mailboxin. В этом случае один час выводиться напоминания более поздних thanexpected.

    Если Outlook не подключился в интерактивном режиме, вы mustadjust неправильный напоминания для встречи в календаре, Outlook toolfinds. Кроме того папка поиска напоминаний не существует в почтовом ящике.Таким образом средство не обновляет элементы электронной почты, контакты и другие сведения.

    Например средство не обновляет напоминания по электронной почте itemto исполнению в будущем одновременно. Также средство не обновляет thereminder на задачу с напоминанием.
  • Сообщение об ошибке: «не удалось установить, поскольку были обнаружены предыдущие версии «Средство обновления календаря Microsoft Exchange». Удалите их и запустите установку снова»

    Если ранее было установлено UpdateTool календаря Exchange версии 1.0, необходимо удалить эту версию перед установкой ExchangeCalendar Update Tool версии 2.0.

    1.0 Toolversion обновления календаря Exchange распространялось формате самораскрывающийся исполняемый файл пакеты .msi, containedtwo (Msextmz.msi и Msextmzcfg.msi). Bothpackages необходимо удалить перед установкой версии 2.0 средства Exchange.

    Youstill проблем при установке версии 2.0 средства Exchange, попробуйте переустановить и затем удалить средство Exchange версии 1.0. Dothis с помощью пакетов MSI-файл, а не с помощью панели управления Установка и RemovePrograms функции. Перезагрузите компьютер, andthen установить версию 2.0 средства Exchange.

    Если эта процедура повышенной, извлечь двоичные файлы непосредственно из пакетов .msi.
  • При запуске средства обновления Outlook или Exchange встречи отключены на один час для почтовых ящиков, где Домашний часовой пояс — стандартное время новой Зеландии

    Данная проблема возникает при следующих сценариях aretrue:
    • Запуск средства обновления Outlook или Exchange на компьютере под управлением Windows Vista.
    • Домашний часовой пояс почтовых ящиков, которые обновляются — стандартное время новой Зеландии.
    Чтобы обойти эту проблему, необходимо запустить Outlook orExchange средства обновления от почтовых ящиков во второй раз на или после January1 2008 г.

    Такое поведение наблюдается, поскольку Windows Vista по-разному обрабатывает zoneinformation времени чем других версий Windows. Если не запустить theOutlook или средства обновления Exchange снова на или после 1 января 2008 года, allappointments во втором событии летнего времени будет отключение на один час. Второй DSTevent включает даты из 16 марта 2008 г. до 6 апреля 2008 г.

    Если вы notwant ждать до 1 января 2008 г. для обновления встреч в второй DSTevent Microsoft Outlook может работать или Exchange обновление средства с компьютера, isrunning Windows XP или Windows Server 2003.
  • Дата в формате мм/дд/гггг заменяется на формат М/дд/гггг

    Средства обновления календаря Exchange установите параметр Дата обновления операционной системы . При этом средство обновления календаря Exchange будет работать неправильно. Эта проблема возникает, поскольку в формате мм/дд/гггг изменяется на М/дд/гггг.

    Кроме того сообщение об ошибке, подобное сообщение об ошибке регистрируется в журнале ошибок.
    [02/28/2008 7:10:21 AM][776]: wmain: не удалось прочитать конфигурацию - ошибки 0x80070057.
    Эта проблема возникает из-за неправильного параметра в следующем разделе примера почтовых ящиков.серверINI-файл.
    ServerDN = /O=OrgName/OU=AdminGroup/cn=Configuration/cn=Servers/cn=ServerName 
    LogDirectory = C:\Program Files\MSExTmz\ServerName\Update\LogFiles\ 
    ErrorFile = C:\Program Files\MSExTmz\ServerName\Update\errors.ServerName.txt 
    ProcessedFile = C:\Program Files\MSExTmz\ServerName\Update\processed.ServerName.txt 
    LogFile = C:\Program Files\MSExTmz\ServerName\Update\msextmz.ServerName.log 
    SystemPatchDate = 2/28/2008  
    DebugFile = C:\Program Files\MSExTmz\debug\ServerName.debug.bin 
    PerMailboxTimeLimit = 15 
    PostMailboxDelay = 0 
    RebaseOptions = 171 
    InputFile = C:\Program Files\MSExTmz\ServerName\Update\Mailboxes.ServerName.txt 
    
    Обратите внимание, что в строке «SystemPatchDate» дата «2/28/08». Эта дата должна быть в формате мм/дд/гггг.

    Чтобы обойти эту проблему, не используйте параметр Дата обновления операционной системы .

Ссылки

Сценарий «Предоставить право почтового ящика»

Option Explicit
' For FileSystemObject
Const ForReading = 1
Const ForWriting = 2
Const ForAppending = 8
Const TristateTrue = -1
Const TristateUseDefault = -2
Const TristateFalse = 0

'Permission Type: Allow or Deny
Const ADS_ACETYPE_ACCESS_ALLOWED = &H0
Const ADS_ACETYPE_ACCESS_DENIED = &H1
Const ADS_ACETYPE_ACCESS_ALLOWED_OBJECT = &H5
Const ADS_ACETYPE_ACCESS_DENIED_OBJECT = &H6

Const ADS_ACEFLAG_INHERIT_ACE = &H2
Const ADS_ACEFLAG_NO_PROPAGATE_INHERIT_ACE = &H4
Const ADS_ACEFLAG_INHERIT_ONLY_ACE = &H8
Const ADS_ACEFLAG_INHERITED_ACE = &H10
Const ADS_ACEFLAG_VALID_INHERIT_FLAGS = &H1f
Const ADS_ACEFLAG_SUCCESSFUL_ACCESS = &H40
Const ADS_ACEFLAG_FAILED_ACCESS = &H80

'Declare ADSI constants
Const ADS_SCOPE_SUBTREE = 2
Const ADS_OPTION_SECURITY_MASK = 3
Const ADS_OPTION_REFERRALS	= 1
Const ADS_SECURITY_INFO_DACL = 4
Const ADS_CHASE_REFERRALS_NEVER = &h00 
Const ADS_CHASE_REFERRALS_SUBORDINATE = &h20 
Const ADS_CHASE_REFERRALS_EXTERNAL = &h40

'Microsoft Exchange Server
Const EX_MB_SEND_AS_ACCESSMASK  = &H00100
Const EX_FULLMAILBOX_ACCESSMASK = 1
Const EX_MB_SEND_AS_GUID = "{AB721A54-1E2F-11D0-9819-00AA0040529B}"

'Application Parameter Index
Const ARG_INDEX_MODE = 0
Const ARG_INDEX_USERNAME = 1
Const ARG_INDEX_FILENAME = 2
Const MIN_ARG = 1

Const MODE_INVALID = -1 
Const MODE_ADD = 0
Const MODE_REMOVE = 1

Const ADD = "-ADD"
Const REMOVE = "-REMOVE"

'Application Const String
Const EMPTYSTRING = ""
Const ERROR_FILENAME = "GrantMailboxPermission.err"
Const OUTPUT_FILENAME = "GrantMailboxPermission.log"
Dim OUTPUT_DELIMITER
OUTPUT_DELIMITER = vbTab

'Logging file
Dim objFSO
Dim objfileError
Dim objfileOutput
Dim objfileImport
Dim objconn
Dim objCommand
Dim rootDSE
Dim sDomainContainer
Dim sUserLDAPPath
Dim objUser
Dim objSDNTsecurity
Dim objDACLNT
Dim objDACLEX
Dim objSDMailbox
Dim fFMA
Dim fSendAs
Dim AccessTypeForFMA
Dim AccessTypeForSendAS
Dim fAddedFMA
Dim fAddedSendAs
Dim fRemovedFMA
Dim fRemovedSendAs
Dim sArraySplit
Dim sOneRow
Dim sGrantedUser
Dim dArgCount
Dim cScriptMode
Dim dArgExpected
Dim fOneError

On Error Resume Next
'Parameter Verification
dArgCount = Wscript.Arguments.Count
If (dArgCount < MIN_ARG) Then
	DisplaySyntax
End If

cScriptMode = MODE_INVALID
Select Case UCase(WScript.Arguments(ARG_INDEX_MODE))
	Case ADD
		cScriptMode = MODE_ADD
		dArgExpected = ARG_INDEX_FILENAME + 1
	Case REMOVE
		cScriptMode = MODE_REMOVE
		dArgExpected = ARG_INDEX_MODE + 1
	Case Else
		cScriptMode = MODE_INVALID
End Select

If (cScriptMode = MODE_INVALID Or dArgCount <> dArgExpected) Then
	DisplaySyntax
End If

If (cScriptMode = MODE_ADD) Then
	sGrantedUser = WScript.Arguments(ARG_INDEX_USERNAME)
	If (IsValidUserName(sGrantedUser) = False) Then
		DisplaySyntax
	End If
End If

CreateImportExportFiles

If (cScriptMode = MODE_ADD) Then
	err.Clear
	
	'Prepare LDAP connection.
	Set objconn = CreateObject("ADODB.Connection")
	Set objCommand = CreateObject("ADODB.Command")
	objconn.Provider = "ADSDSOObject"
	objconn.Open "ADs Provider"
	If (err.number <> 0) Then
		WScript.StdOut.WriteLine("Failed to bind to Active Directory server, error:" & err.Description)
		objfileError.WriteLine("Failed to bind to Active Directory server, error:" & err.Description)
		WScript.Quit
	End If
		
	Set rootDSE = GetObject("LDAP://rootDSE")
	sDomainContainer = rootDSE.Get("defaultNamingContext")
	If (err.number <> 0) Then
		WScript.StdOut.WriteLine("Failed to find a Domain Container:" & err.Description)
		objfileError.WriteLine("Failed to find a Domain Container:" & err.Description)
		WScript.Quit
	End If
		
	Set objCommand.ActiveConnection = objconn

	Do While objfileImport.AtEndOfStream <> True
		fOneError = False
		sUserLDAPPath = EMPTYSTRING
		err.Clear

		sOneRow = Trim(objfileImport.ReadLine)
		If sOneRow <> EMPTYSTRING Then
		
		    sUserLDAPPath = GetLDAPPathFromLegacyDN(sOneRow)
		    If (err.number <> 0) Then
			    objfileError.WriteLine("Failed to get user's LDAP path from " & sOneRow)
			    fOneError = True
			    err.Clear
		    End If

		    If (fOneError = False) Then
			    Set objUser = GetObject(sUserLDAPPath)
			    If (err.number <> 0) Then
				    objfileError.WriteLine("Failed to get user object from " & sUserLDAPPath)
				    objfileError.WriteLine("Error: " & err.Description)
				    fOneError = True
				    err.Clear
			    End If
		    End If
    	
		    If (fOneError = False) Then
			    Set objSDMailBox = objUser.MailboxRights
			    Set objDACLEX = objSDMailbox.DiscretionaryAcl
			    Set objSDNTsecurity = objUser.ntSecurityDescriptor
			    Set objDACLNT = objSDNTsecurity.DiscretionaryAcl
			    If (err.number <> 0) Then
				    objfileError.WriteLine("Failed to get DACL of " & sUserLDAPPath)
				    objfileError.WriteLine("Error: " & err.Description)
				    fOneError = True
				    err.Clear
			    End If
		    End If

		    ' Verify Full Mailbox Access and Send As permissions.
		    fFMA = False
		    fSendAs = False
		    AccessTypeForFMA = ADS_ACETYPE_ACCESS_ALLOWED
		    AccessTypeForSendAS = ADS_ACETYPE_ACCESS_ALLOWED

		    If (fOneError = False) Then
			    CheckFullMailboxAccess objDACLEX, sGrantedUser, fFMA, AccessTypeForFMA
			    CheckSendAs objDACLNT, sGrantedUser, fSendAs, AccessTypeForSendAS
			    If (err.number <> 0) Then
				    objfileError.WriteLine("Failed to Check permission of " & sUserLDAPPath)
				    objfileError.WriteLine("Error: " & err.Description)
				    fOneError = True
				    err.Clear
			    End If
		    End If

		    'If Send As or Full Mailbox Access permissions do not exist, add these permissions.
		    If ( (AccessTypeForFMA = ADS_ACETYPE_ACCESS_DENIED) Or (AccessTypeForSendAs = ADS_ACETYPE_ACCESS_DENIED_OBJECT) ) Then
			    'If Deny access is already granted, do not add permissions for this user.
			    objfileError.WriteLine("Deny permission already added: " & sUserLDAPPath)
			    fOneError = True
		    End If
    		
		    If ( fOneError = False And ((fFMA = False) Or (fSendAs = False)) ) Then
			    fAddedFMA = False
			    fAddedSendAs = False
    			
			    If (fFMA = False) Then
				    'Add Full Mailbox Access permissions.
				    err.Clear
				    AddAce objDACLEX, sGrantedUser, EX_FULLMAILBOX_ACCESSMASK, ADS_ACETYPE_ACCESS_ALLOWED, ADS_ACEFLAG_INHERIT_ACE, 0,0,0
				    objSDMailbox.DiscretionaryAcl = objDACLEX
				    objUser.MailboxRights = Array(objSDMailbox)
				    If ( err.number <> 0 ) Then
					    objfileError.WriteLine("Failed to add FullMailbox Access: " & sUserLDAPPath)
					    objfileError.WriteLine("Error: " & err.Description)
					    fOneError = True
					    fAddedFMA = False
					    err.Clear
				    Else
					    fAddedFMA = True
				    End If
			    End If
    			
			    If (fSendAs = False) Then
				    'Add Send As permissions.
				    err.Clear
				    AddAce objDACLNT, sGrantedUser, EX_MB_SEND_AS_ACCESSMASK, ADS_ACETYPE_ACCESS_ALLOWED_OBJECT, 0,1, EX_MB_SEND_AS_GUID, 0
				    objSDNTsecurity.DiscretionaryAcl = objDACLNT
				    objUser.Put "ntSecurityDescriptor", Array( objSDNTsecurity )
				    objUser.SetOption ADS_OPTION_SECURITY_MASK, ADS_SECURITY_INFO_DACL
				    If ( err.number <> 0 ) Then
					    objfileError.WriteLine("Failed to add SendAs permission: " & sUserLDAPPath)
					    objfileError.WriteLine("Error: " & err.Description)
					    fOneError = True
					    fAddedSendAs = False
					    err.Clear
				    Else
					    fAddedSendAs = True
				    End If
			    End If

			    If (fOneError = False ) Then 
				    objUser.SetInfo
				    If (err.number <> 0) Then
					    objfileError.WriteLine("Failed to update user: " & sUserLDAPPath)
					    objfileError.WriteLine("Error: " & err.Description)
					    fOneError = True
					    err.Clear		
				    Else
					    'Update logging.
					    objfileOutput.WriteLine(sUserLDAPPath & OUTPUT_DELIMITER & fAddedFMA & OUTPUT_DELIMITER & fAddedSendAs)		
				    End If
			    End If
		    End If

		    Set objUser = Nothing
		    Set objSDNTsecurity = Nothing
		    Set objDACLNT = Nothing
		    Set objDACLEX = Nothing
		    Set objSDMailBox = Nothing

		    If (fOneError = True) Then
			    WScript.StdOut.Write("!")
		    Else
			    WScript.StdOut.Write(".")
		    End If
        End If
	Loop

Set rootDSE = Nothing
Set objCommand = Nothing
Set objconn = Nothing

End If

If (cScriptMode = MODE_REMOVE) Then
	'Retrieve the granted user from the first line of the import file.
	sGrantedUser = objfileImport.ReadLine
	If (IsValidUserName(sGrantedUser) = False) Then
		WScript.StdOut.WriteLine("Invalid User in import file. please check import file..")
		objfileError.WriteLine("Invalid User in import file. please check import file..")
		WScript.Quit
	End If
	
	Do While objfileImport.AtEndOfStream <> True
		fOneError = False
		sUserLDAPPath = EMPTYSTRING
		fAddedFMA = False
		fAddedSendAs = False
		fRemovedFMA = False
		fRemovedSendAs = False
		err.Clear

		sOneRow = objfileImport.ReadLine
		sArraySplit = Split(sOneRow, OUTPUT_DELIMITER)

		'The first column is the LDAP path.
		sUserLDAPPath = sArraySplit(0)
		'The second column is Full Mailbox Access permissions.
		fAddedFMA = sArraySplit(1)
		'The third column is Send As permissions.
		fAddedSendAs = sArraySplit(2)

		Set objUser = GetObject(sUserLDAPPath)
		If (err.number <> 0) Then
			objfileError.WriteLine("Failed to get user object from " & sUserLDAPPath)
			objfileError.WriteLine("Error: " & err.Description)
			fOneError = True
			err.Clear
		End If
		
		If ((fOneError = False) And (fAddedFMA = "True")) Then		
			Set objSDMailBox = objUser.MailboxRights
			Set objDACLEX = objSDMailbox.DiscretionaryAcl
			fRemovedFMA = RemoveFullMailboxAccess(objDACLEX, sGrantedUser)
			If (err.number <> 0) Then
				objfileError.WriteLine("Failed to Remove Full MailboxAccess from " & sUserLDAPPath)
				objfileError.WriteLine("Error: " & err.Description)
				fOneError = True
				err.Clear
			End If
			
			If (fRemovedFMA = False) Then
				objfileError.WriteLine("Couldn't find Full mailbox access permission on " & sUserLDAPPath)
			End If
			
			If ((fOneError = False) And (fRemovedFMA = True)) Then
				objSDMailbox.DiscretionaryAcl = objDACLEX
				objUser.MailboxRights = Array(objSDMailbox)
			End If
		End If

		If ((fOneError = False) And (fAddedSendAs = "True")) Then		
			Set objSDNTsecurity = objUser.ntSecurityDescriptor
			Set objDACLNT = objSDNTsecurity.DiscretionaryAcl

			fRemovedSendAs = RemoveSendAs(objDACLNT, sGrantedUser)
			If (err.number <> 0) Then
				objfileError.WriteLine("Failed to Remove SendAs from " & sUserLDAPPath)
				objfileError.WriteLine("Error: " & err.Description)
				fOneError = True
				err.Clear
			End If

			If (fRemovedSendAs = False) Then
				objfileError.WriteLine("Couldn't find SendAs permission on " & sUserLDAPPath)
			End If
			
			If ((fOneError = False) And (fRemovedSendAs = True)) Then
				objSDNTsecurity.DiscretionaryAcl = objDACLNT
				objUser.Put "ntSecurityDescriptor", Array( objSDNTsecurity )
				objUser.SetOption ADS_OPTION_SECURITY_MASK, ADS_SECURITY_INFO_DACL
			End If
		End If

		If ((fOneError = False) And (fRemovedFMA Or fRemovedSendAs)) Then
			objUser.SetInfo
			If (err.number <> 0) Then
				objfileError.WriteLine("Failed to update ADSI for user: " & sUserLDAPPath)
				objfileError.WriteLine("Error: " & err.Description)
				fOneError = True
				err.Clear		
			Else 
				If ( fRemovedFMA Or fRemovedSendAs ) Then
					'Update logging.
					objfileError.WriteLine("Removed Permission from " & sUserLDAPPath & OUTPUT_DELIMITER & fRemovedFMA & OUTPUT_DELIMITER & fRemovedSendAs)
				End If
			End If
		End If

		If (fOneError = True) Then
			WScript.StdOut.Write("!")
		Else
			WScript.StdOut.Write(".")
		End If
	Loop
End If

CloseImportexportFiles

Function IsValidUserName (sUserName)
	Dim dPosition
	dPosition = InStr(1, sUserName, "\")
	If (dPosition = 0 ) Then
		IsValidUserName = False
		objfileError.WriteLine("Invalid User:" & sUserName)
	Else
		IsValidUserName = True
	End If
End Function

Function CheckSendAs (objNTSD, sUser, fSendAs, AccessType)
	Dim intACECount
	Dim objACE
	
	err.Clear
	fSendAs = False
	AccessType = ADS_ACETYPE_ACCESS_ALLOWED
	intACECount = objNTSD.AceCount

	If intACECount Then
		For Each objACE In objNTSD
			err.Clear
			If ( (UCase(objACE.Trustee) = UCase(sUser)) And (objACE.ObjectType = EX_MB_SEND_AS_GUID) ) Then
				fSendAs = True
				AccessType = objACE.AceType
			End If
		Next
	End If	

	If (err.number <> 0) Then
		objfileError.WriteLine("Check SendAs permissions Failed : " & sUser)
		objfileError.WriteLine("Error: " & err.Description)
		err.Clear
		fOneError = True
	End If
	Set objACE = Nothing
End Function

Function CheckFullMailboxAccess (objACL, sUser, fFoundFMA, AccessType)
	Dim intACECount
	Dim objACE

	err.Clear
	fFoundFMA = False
	AccessType = ADS_ACETYPE_ACCESS_ALLOWED
	intACECount = objACL.AceCount
	If intACECount Then
		For Each objACE In objACL
			If ( (UCase(objACE.Trustee) = UCase(sUser)) And ((objACE.AccessMask And EX_FULLMAILBOX_ACCESSMASK) <> 0)) Then
				fFoundFMA = True
				AccessType = objACE.AceType
			End If
		Next
	End If

	If (err.number <> 0) Then
		objfileError.WriteLine("Check FullMailbox permissions Failed : " & sUser)
		objfileError.WriteLine("Error: " & err.Description)
		err.Clear
		fOneError = True
	End If
	Set ObjACE = Nothing
End Function

Function RemoveSendAs (objNTSD, sUser)
	Dim intACECount
	Dim objACE
	Dim fFound
	
	fFound = False
	intACECount = objNTSD.AceCount
	
	If intACECount Then
		For Each objACE In objNTSD
			If ((UCase(objACE.Trustee) = UCase(sUser)) And (objACE.ObjectType = EX_MB_SEND_AS_GUID) ) Then
				objNTSD.RemoveAce objACE
				fFound = True
			End If
		Next
	End If

	RemoveSendAs = fFound		
End Function

Function RemoveFullMailboxAccess (objACL, sUser)
	Dim intACECount
	Dim objACE
	Dim fFound
	
	fFound = False
	intACECount = objACL.AceCount
	
	If intACECount Then
		For Each objACE In objACL
			If((0 <> Instr(UCase(objACE.Trustee), UCase(sUser))) And (objACE.AccessMask And EX_FULLMAILBOX_ACCESSMASK) <> 0) Then
				objACE.AccessMask = (objACE.AccessMask Xor EX_FULLMAILBOX_ACCESSMASK)
				fFound = True
			End If
		Next
	End If

	RemoveFullMailboxAccess = fFound		
End Function

Function GetLDAPPathFromLegacyDN (sLegacyDN)
	Dim rsUsers
	Dim sLdapPath
	
	objCommand.CommandText = "<GC://" & sDomainContainer & ">;(&(&(& (mailnickname=*) (| (&(objectCategory=person)(objectClass=user)(legacyExchangeDN=" & sLegacyDN & ")) ))));adspath;subtree"
	objCommand.Properties("searchscope") = ADS_SCOPE_SUBTREE
	objCommand.Properties("Page Size") = 10
	objCommand.Properties("Timeout") = 30 
	objCommand.Properties("Chase referrals") = (ADS_CHASE_REFERRALS_SUBORDINATE Or ADS_CHASE_REFERRALS_EXTERNAL)

	err.Clear	
	Set rsUsers = objCommand.Execute
	If (err.number <> 0) Then
		objfileError.WriteLine("Search for mailbox owners failed, error:" & err.Description)
		fOneError = True
	End If
	
	If (rsUsers.RecordCount = 0) Then
		objfileError.WriteLine("No mailbox owner user accounts found for " & sLegacyDN & " in " & sDomainContainer & ".")
		fOneError = True		
	End If

	If (rsUsers.RecordCount > 1) Then
		objfileError.WriteLine("Multiple mailboxs owner user accounts found for " & sLegacyDN & " in " & sDomainContainer & ".")
		fOneError = True		
	End If

	sLdapPath = Replace(rsUsers.Fields(0).Value, "GC://", "LDAP://")	
	GetLDAPPathFromLegacyDN = sLdapPath
	Set rsUsers = Nothing
End Function

Function CloseImportexportFiles

	objfileError.WriteLine("*******************************************************")
	objfileError.WriteLine("End at " & Date & " " & Time)
	objfileError.WriteLine("*******************************************************")

	objFSO.Close
	objfileError.Close
	objfileOutput.Close
	objfileImport.Close
	
	Set objFSO = Nothing
	Set objfileError = Nothing
	Set objfileOutput = Nothing
	Set objfileImport = Nothing
End Function

Function CreateImportExportFiles
	Dim sErrorsFileName
	Dim sImportFileName
	Dim sOutputFileName

	err.Clear
	Set objFSO = CreateObject("Scripting.FileSystemObject")
	sErrorsFileName = ERROR_FILENAME
	sImportFileName = EMPTYSTRING
	sOutputFileName = EMPTYSTRING

	Select Case cScriptMode
		Case MODE_ADD
			sImportFileName = WScript.Arguments(ARG_INDEX_FILENAME)
			sOutputFileName = OUTPUT_FILENAME
		Case MODE_REMOVE
			sImportFileName = OUTPUT_FILENAME 'Use the output file name as the import file.
			sOutputFileName = EMPTYSTRING	
		Case Else
			DisplaySyntax
	End Select

	Set objfileError = objFSO.OpenTextFile(sErrorsFileName, ForAppending, True, TristateTrue)
	objfileError.WriteLine("*******************************************************")
	objfileError.WriteLine("Start at " & Date & " " & Time)
	objfileError.WriteLine("*******************************************************")

	If (cScriptMode = MODE_REMOVE) Then
		Set objfileImport = objFSO.OpenTextFile(sImportFileName, ForReading, False, TristateTrue)
	Else
		Set objfileImport = objFSO.OpenTextFile(sImportFileName, ForReading, False, TristateFalse)
	End If

	If (sOutputFileName <> EMPTYSTRING) Then
		'Determine whether the output file already exists.
		If (objFSO.FileExists(sOutputFileName)) Then
			Set objfileOutput = objFSO.OpenTextFile(sOutputFileName, ForReading, False, TristateTrue)
			sOneRow = objfileOutput.ReadLine
			'If the user name in the file differs from the parameter, the process cannot continue.
			If ( sOneRow <> sGrantedUser ) Then
				WScript.StdOut.WriteLine("The Domain\User must be the same as " & sOneRow )
				WScript.Quit
			End If
			Set objfileOutput = objFSO.OpenTextFile(sOutputFileName, ForAppending, True, TristateTrue)
		Else
			Set objfileOutput = objFSO.OpenTextFile(sOutputFileName, ForWriting, True, TristateTrue)
			'The first line of the log file is the user who is granted the permissions.
			objfileOutput.WriteLine(sGrantedUser)
		End If
	End If
	
	If (err.number <> 0) Then
		WScript.StdOut.WriteLine("Failed to open Log file, error:" & err.Description)
		WScript.Quit
	End If
End Function

Function AddAce(dacl, TrusteeName, gAccessMask, gAceType, gAceFlags, gFlags, gObjectType, gInheritedObjectType)
	Dim Ace1
	
	Set Ace1 = CreateObject("AccessControlEntry")
	Ace1.AccessMask = gAccessMask
	Ace1.AceType = gAceType
	Ace1.AceFlags = gAceFlags
	Ace1.Flags = gFlags
	Ace1.Trustee = TrusteeName
	'Determine whether ObjectType has to be set.
	If CStr(gObjectType) <> "0" Then
		Ace1.ObjectType = gObjectType
	End If

	'Determine whether InheritedObjectType has to be set.
	If CStr(gInheritedObjectType) <> "0" Then
		Ace1.InheritedObjectType = gInheritedObjectType
	End If
	dacl.AddAce Ace1

    Set Ace1 = Nothing
End Function

Function DisplaySyntax
	WScript.StdOut.WriteLine("Syntax:")
	WScript.StdOut.WriteLine()
	WScript.StdOut.WriteLine("Grant Full mailbox access and SendAs permission to USER based on IMPORT_FILE:")
	WScript.StdOut.WriteLine("    CSCRIPT " & WScript.ScriptName & " -Add DOMAIN\USER IMPORT_FILE")
	WScript.StdOut.WriteLine("    NOTE: """ & OUTPUT_FILENAME & """ will be created for -Remove option ")
	WScript.StdOut.WriteLine()
	WScript.StdOut.WriteLine("Remove Full mailbox access and SendAs permission based on " & OUTPUT_FILENAME & ":")
	WScript.StdOut.WriteLine("    CSCRIPT """ & WScript.ScriptName & """ -Remove ")
	WScript.StdOut.WriteLine()
	WScript.StdOut.WriteLine("For all modes, errors are saved to " & ERROR_FILENAME )

	WScript.Quit	
End Function

Свойства

Код статьи: 941018 - Последний отзыв: 23 ноября 2013 г. - Revision: 7.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft Exchange Server 2007 Enterprise Edition
  • Microsoft Exchange Server 2007 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange 2000 Enterprise Server
  • Microsoft Exchange 2000 Server Standard Edition
Ключевые слова: 
kbhowto kbinfo kbmt KB941018 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Данная статья переведена с использованием программного обеспечения Майкрософт для машинного перевода и, возможно, отредактирована посредством технологии Community Translation Framework (CTF). Корпорация Майкрософт предлагает вам статьи, обработанные средствами машинного перевода, отредактированные членами сообщества Майкрософт и переведенные профессиональными переводчиками, чтобы вы могли ознакомиться со всеми статьями нашей базы знаний на нескольких языках. Статьи, переведенные с использованием средств машинного перевода и отредактированные сообществом, могут содержать смысловое, синтаксические и (или) грамматические ошибки. Корпорация Майкрософт не несет ответственности за любые неточности, ошибки или ущерб, вызванные неправильным переводом контента или его использованием нашими клиентами. Подробнее об CTF можно узнать по адресу http://support.microsoft.com/gp/machine-translation-corrections/ru.
Эта статья на английском языке: 941018

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com