Як адресу літній Вільний час за допомогою засобу оновлення календаря Exchange

Переклади статей Переклади статей
Номер статті: 941018 - Показ продуктів, яких стосується ця стаття.
Розгорнути все | Згорнути все

На цій сторінці

ВВЕДЕННЯ

Літній Вільний час являє собою систему, щоб встановити годинник вперед, так що Схід і захід сонця відбувалися пізніше на одну годину. Ефект є більше (літо) увечері. Багато країн спостерігати літній Вільний час. Більшість з цих країни мають свої власні правила та положення для коли літній Вільний час починається і закінчується.

Дати літній Вільний час (DST) може змінитися з року в рік. Microsoft Outlook користувачі мають оновлювати свої Outlook програма-календар кожного разу, коли зміни правил літнього часу. На дати між попереднього Правила літнього часу та поточні правила літнього часу згадуються в цій статті, як на «розширеного періоду літнього часу.»

У цій статті описано інтерактивні елементи що ви можна взяти на адресу елементи календаря в Outlook, які припадають на розширений Періоду літнього часу. У цій статті також описано інтерактивні елементи, які ви повинні зробити, щоб оновлення елементів календаря, які зберігаються в Microsoft Exchange Server, відповідно до Нові правила літнього часу. Рішення, що надається в цій статті, передбачає на Microsoft Exchange календаря засіб оновлення ("засіб Exchange").

Для Щоб отримати додаткові відомості про підготовку для змін переходу на літній Вільний час в 2007 (DST 2007) для всіх уразливих продуктів корпорації Майкрософт, відвідайте нижче веб-сайт Майкрософт:
http://support.Microsoft.com/GP/cp_dst
У 2011 році російський уряд прийняв статутне право скасувати літній Вільний час (DST). Для отримання додаткової інформації відвідайте веб-сайті Microsoft:
http://support.Microsoft.com/GP/cp_dst#tab0
Докладніше російською мовою відвідайте такий веб-сайт корпорації Майкрософт:
http://support.Microsoft.com/GP/cp_dst/ru#tab0

Додаткові відомості

Про засіб Exchange

Після інсталяції оновлень правил літнього часу для Windows, всі старі зустрічей, які відбуваються протягом періоду зміни літнього часу буде неправильно відображається як одну годину пізніше. Це вірно для обох повторюються і одноразові зустрічі. Ви повинні оновлення цих зустрічей, так що вони буде відображатися правильно в Outlook, у Microsoft Office Outlook Web Access, і в додатках, засновані на інтерфейс CDO (CDO).

Outlook має засіб, який називається оновлення даних часового поясу Інструмент для Microsoft Office Outlook ("засіб для Outlook"). Цей інструмент дозволяє користувачам оновлювати свої календарі.

Для отримання додаткових відомостей про оновлення даних часового поясу Інструмент, клацніть номер статті для перегляду статті в корпорації Майкрософт База знань:
931667Як вирішувати змін переходу на літній Вільний час в 2007 році за допомогою засобу оновлення даних часового поясу для Microsoft Office Outlook
Засіб оновлення календаря Exchange ("обмін інструмент") допомагає уникнути труднощів, які адміністратори стикатися в розгортання засіб для Outlook широко для всіх користувачів і переконатися, що кожен користувач працює на Outlook інструмент правильно.

Високого рівня опис засіб Exchange

Засіб Exchange складається з двох окремих виконуваних файлів. Ці файли описано в нижченаведеній таблиці.
Згорнути цю таблицюРозгорнути цю таблицю
Ім'я файлуОпис
Msextmz.exe Виконуваний файл екстракти часового поясу відомості з поштових скриньок на сервері, на якому працює Exchange Server. Це виконуваний файл також оновлює календарі поштової скриньки для вказаного списку користувачів.
Msextmzcfg.exe Виконуваний файл знаходиться на інструмент налаштування, який виконує більшість з кроків, які беруть участь у оновлення на сервері Exchange Server.

Про нову версію засіб Exchange

Базуючись на відгуках, була нова версія засіб Exchange випущено 13 серпня 2007. Ця стаття відноситься до нової версії в Засіб Exchange. Якщо використовується стара версія засіб Exchange видалити його а потім встановити нову версію.

Нова версія Засіб Exchange включає в себе наступні покращення:
  • часовий пояс видобутку та процеси оновлення календаря прискорився за підсумками.
  • Інтерфейс користувача для інструмент налаштування є більше раціоналізація та інтуїтивно зрозумілим.
  • Можливість оновити конференц-залів і ресурсів Поштові скриньки тепер вбудований в інструмент налаштування.
  • Можливість оновлення поштових скриньок користувачів тепер вбудований в регіоні інструмент налаштування.
  • Виправлення неполадок документ зараз входить до складу на Засіб для Exchange і вона інтегрована в інструмент налаштування.
  • Алгоритм видобутку часового поясу та обробку помилок поліпшення можливостей.
  • Процес реєстрація події є більш зручним для користувачів.

Ризик запущено засіб Exchange

Під Вільний час запуску засіб обміну, є ризик, що одноразові зустрічі не може бути належним чином оновлено. Наприклад, одноразові зустрічі, які користувач, створені після операційна система (ОС) була Оновлений травня оновлюється неправильно.

Щоб зменшити ризик, скористайтеся одним із Наступні методи:
  • Зменшити інтервал між Вільний час, що ви оновлення клієнтські комп'ютери та Вільний час, оновлення календарів поштової скриньки.
  • Якщо комп'ютери в організації були оновлені довгий Вільний час тому, використовувати в Лише оновлення повторювані наради налаштування вДодаткові параметри.

    Як правило, люди не створювати одноразові зустрічі багато місяців вперед. Таким чином, якщо в DST оновлення було інстальовано багато місяців раніше, більшість одноразові зустрічі підпадають під розширеного періоду літнього часу буде створено за допомогою нових Перехід правил літнього часу. Ці зустрічі не мають бути оновлені.
  • Якщо ви знаєте, на точну дату, коли всі клієнтські комп'ютери були оновлені, використовувати в Дата патч операційної системи налаштування вДодаткові параметри. Якщо вказано дату, одноразові зустрічей, створених після цієї дати, не оновлюються за допомогою обміну інструмент.
Примітка Якщо запустити засіб для Outlook або засіб для Exchange на клієнта комп’ютер-зразок під керуванням Windows Vista і ви запустіть засіб поштових скриньок де основний маркер часовий пояс Новозеландський стандартний Вільний час, ви повинні запустити засіб на другий раз, або після 1 січня 2008 року. Докладніше перегляньте відомого" питання"розділу.

Параметри оновлення поштових скриньок

У наведеній нижче таблиці перелічено п'ять параметри, які можна використовувати для оновлення поштових скриньок користувачів використовувати правила часових поясів DST 2007.
Згорнути цю таблицюРозгорнути цю таблицю
ПараметрУ галузі інформаційних технологійМінуси
Розповсюджувати засіб для Outlook для кожного користувача а потім доручити користувачам оновити свої поштові скриньки. Цей параметр дозволяє уникнути ризику, Це пов'язано з працює засіб Exchange. Важко гарантувати, що всі користувачі будуть запустити засіб Outlook, правильно і в це своєчасне чином.

Користувачі, які не мають Microsoft Outlook буде не в змозі працювати на Засіб для Outlook.

Ви повинні зробити додаткові освітні зусилля, щоб зменшити плутанину для користувачів.
Запустіть засіб Exchange всіх відповідних користувачів і серверів. Цей параметр забезпечує спрощених досвід для користувачів. Існує ризик, пов'язаний з запущено засіб для Exchange, як описано в розділі "Ризик запущено засіб Exchange".
Запустіть засіб Exchange для оновлення лише повторювані зустрічі. Дозволити користувачам оновити зустрічі у свої поштові скриньки за допомогою засіб для Outlook. Менший ризик одноразові зустрічі бути некоректно оновлюватися. Які мінуси запущено засіб для Outlook у поєднанні з мінусів запущено засіб Exchange.
Запускайте ані засіб для Exchange, ані засіб для Outlook. Попросіть користувачів Щоб перевірити свої календарі та re-book призначення у міру необхідності. Це параметр дозволяє уникнути ризику, пов'язаного з запущено засіб Exchange. Якщо не всі користувачі re-book всім постраждалим зустрічей, деякі програма-календар елементи буде одну годину off протягом розширеного періоду літнього часу.

Ви повинні зробити додаткові освітні зусилля, щоб зменшити плутанину для користувачів.
Розповсюджувати засіб для Outlook для кожного користувача а потім доручити користувачам оновити свої поштові скриньки. Потім використовуючи режим часового поясу видобутку Засіб Exchange для визначення, чи користувачів запущено засіб для Outlook.

Якщо засіб для Outlook не працюють користувачі, адміністратор може Запустіть засіб Exchange.
Цей параметр знижує ризик користувачів не Запуск засобу у встановлені терміни і це дозволяє уникнути ризику, пов'язаного з запущено засіб Exchange. Це не варіант, якщо користувачі Запуск Microsoft Office Outlook 2007-Українська версія.

Як інсталювати засіб Exchange

Засіб оновлення календаря Exchange доступна для завантаження у регіоні форма виконуваним файлом саморозгортання (Msextmz.exe). Цей інструмент доступний для завантаження в центрі завантаження Майкрософт:

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

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

Для отримання додаткової інформації про віртуальну машину для засобу оновлення календаря Exchange, натисніть на номер статті для перегляду статті в базі знань Microsoft Knowledge Base:
933185віртуальна машина, яка допоможе ви розгортати оновлення календаря 2007 літнього часу в організації Exchange
Додаткові відомості про завантаження представник служби підтримки клієнтів Microsoft файли, клацніть номер статті для перегляду статті в корпорації Майкрософт База знань:
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 стандарт видання

Операційні системи, що підтримуються засіб Exchange

Засіб Exchange буде працювати на 32-розрядні версії таких операційні системи:
  • Microsoft Windows Server 2003
  • Microsoft Windows XP
  • Windows Vista

Що робити, перш ніж запускати засіб Exchange

Інсталяція оновлень

Перед тим як запускати засіб для Exchange, переконайтеся, що цей клієнт і сервер комп'ютери оновлюються належним чином. Для цього Установіть скинути параметри Windows літнього часу на клієнтів і на серверах. Для більш інформацію, клацніть номер статті в регіоні Microsoft Knowledge Base:
942763Грудень 2007 накопичувальне оновлення часових поясів для операційних системний інтегратор Microsoft Windows

Якщо використовується Microsoft Exchange Server 2003 пакет оновлень 2 (SP2), встановіть один або обидва наступних оновлень, як підходить для вашої організації:
  • Оновлення 911829
  • Оновлення 924334
Щоб отримати додаткові відомості про ці оновлення клацніть такі номери для перегляду статті в базі знань Microsoft Knowledge Base:
911829З'являється протокол IMAP про помилку при спробі виконання будь-яких завдань редагування, або потрібно клацнути, щоб створити кадр в Outlook Web Access
924334 Форми скласти протокол IMAP зависає після інсталяції Internet Explorer 7.0 і керування S/MIME на клієнт Outlook Web Access на Exchange Server 2003
Якщо користувачі в межах Єрусалиму, Центральної Бразильський або е. Південної Америки часового поясу, будь ласка, прочитайте керівництво в регіоні Наступні статті бази знань Microsoft Knowledge Base:

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

Перевірте системні вимоги

Потрібно запустити засіб Exchange лише на комп'ютері, для яких на виконуються такі умови:
  • На комп'ютері інстальовано Microsoft Office Outlook 2003 із пакетом 2 (SP2) або Microsoft Office Outlook 2007 інстальовано.
  • комп’ютер-зразок має в Outlook даних часового поясу інстальовано.
  • Інстальовано Microsoft .NET Framework Версія 2.0 на клієнтський комп’ютер-зразок.
Ви не можете запустити засіб для Exchange на комп'ютері під керуванням Exchange Server або засоби керування Exchange системи. Якщо спробувати інсталювати засіб для Exchange на комп'ютері під керуванням Exchange Server або обмін Системи управління інструментами, з'являється таке протокол IMAP про помилку:
Засіб оновлення календаря Exchange Microsoft не можна інсталювати з Microsoft Exchange.

Перевірте дозволи та інших вимог користувача

Переконайтеся, що виконуються такі умови:
  • Адміністрування пул носіїв поштових скриньок даних дозволи на кожному Exchange Оновити сервер бази даних повідомлень (MDB).
  • Надіслати як дозволи для всіх поштових скриньок Оновлено.
  • повний доступ до поштової скриньки дозволи для всіх поштових скриньок Оновлено.
  • Отримують доступ локального адміністратора на комп'ютері що працює засіб Exchange.

Про "Грант поштової скриньки дозвіл" сценарію

Можна використовувати зразок GrantMailboxPermission.vbs скрипт для надання повний доступ до поштової скриньки користувача домену та надіслати як дозволи для всіх Поштові скриньки.

Цей сценарій може працювати лише на сервері Exchange до адміністратора на комп'ютері під керуванням Exchange 2000 Server або обмін Сервер 2003. Цей сценарій не може працювати на комп'ютері з Exchange Server 2007. Однак, можна використовувати оболонка керування Exchange надати в необхідні дозволи.

Код для сценарію vbs надається у регіоні Розділ "Посилання". У нижченаведеній таблиці описано два режими, в яких цей сценарій виконується.
Згорнути цю таблицюРозгорнути цю таблицю
РежимКомандаОпис
Додати CScript GrantMailboxPermission.vbs –add Domain_Name \ Ім'я _ користувача Скріпки Ця команда надає на Domain_Name \ Ім'я _ користувача повний доступ до поштової скриньки користувача і надіслати як дозволи до поштових скриньок користувачів, перелічених на вході файл.

Вхідний файл має бути в текстовий файл, який містить спадщина імена доменів поштових скриньок користувачів. Такі імена повинні розділяються перевезення Повернення + лінії каналу (CRLF).

Скрипт створює на GrantMailboxPermission.log файл. Цей файл є запис А поштових скриньок, оброблено. Перший рядок файлу журналу є в Domain_Name \ Ім'я _ користувача користувач, який надається доступ. Не видаляйте цей файл. Цей файл використовується в режимі видалити.

Якщо є явні "заборонити" доступ призначені для користувача, сценарій журнали інформацію у файлі, що називається "GrantMailboxPermission.err". На сценарій не надавати або змінити дозвіл.

Якщо користувач входить група безпеки, які були призначені "заборонити" доступ, сценарій гранти повний доступ до поштової скриньки та надіслати як дозволи. Однак, користувач буде неможливо Щоб увійти до поштової скриньки. Усі помилки будуть увійти в систему GrantMailboxPermission.err файл.
Видалити CScript GrantMailboxPermission.vbs –removeЦя команда вилучає повний доступ до поштової скриньки та надіслати як права доступу до поштових скриньок, описаних у GrantMailboxPermission.log файл з на Domain_Name \ Ім'я _ користувача користувача. На Domain_Name \ Ім'я _ користувача Указане користувачем у регіоні GrantMailboxPermission.log файл.
коментар до обговорення
  • При запуску цього сценарію на комп'ютері, на якому запущено Exchange Server, сценарій повертає період символів (.), коли сценарій успішно процеси користувача. Сценарій повертає знак оклику символ (!), коли сценарій успішно не обробляти користувача.
  • вихідний файл режимі витягнення часового поясу не може бути використовується вхідного файлу для цього сценарію. Щоб створити файл вводу для цього скрипт, вставте вміст часового поясу видобутку режим виводу файлу Блокнот, зберегти вміст як новий документ а потім використовувати новий документ як Вхідний файл.

Як використовувати засіб Exchange

Щоб використовувати засіб для Exchange, почати оновлення календаря Exchange Інструмент налаштування (Msextmzcfg.exe). Ця програма допоможе вам з усією процес оновлення календарів.

Запустити процес видобування часового поясу

Оновлювати календарі поштової скриньки, ви повинні визначити часовий пояс календарі. Процес вилучення часового поясу розглядає властивості і на призначення скриньки календарі, щоб визначити їх часові пояси. Запускати з Вільний час зона процес вилучення, виконайте такі дії:
  1. На сторінці натисніть кнопку Наступний.

    Примітка сторінка привітання знайомить вас з інструмент налаштування і обговорює дозволи, які потрібні для запуску засобу. Сторінка також наведено посилання на цю статтю.
  2. Укажіть параметри для інструмент налаштування. Ми рекомендую, що ви виділити принаймні 200 мегабайт (МБ) вільного дискового простору для ведення журналу.

    Якщо ви хочете змінити настройки за промовчанням, натисніть кнопкуДодаткові параметри. Для отримання додаткових відомостей про передових настройки, перегляньте таблицю, що йде за цю процедуру.
  3. Виберіть серверів Exchange в місцевих служба Active Directory каталог служб лісу, що потрібно оновити. Натисніть кнопкуНаступний Щоб розпочати процес видобування часового поясу.

    Примітка Якщо ви вже виконали часового поясу видобутку, можна пропустити Цей крок, натиснувши Пропустити.

    Зверніть увагу, що статус Бар, посилання на журнал виводу і реального часу відображення часового поясу процес вилучення відображаються. Після часового поясу процес вилучення завершити, натисніть кнопку Наступний.

    Якщо виявлені помилки, в посилання на виправлення неполадок документ відображається.
  4. Налаштувати на Поштові скриньки з немає часу Зон сторінки а потім клацніть Наступний для сканування програма-календар елементи.

    Примітка Якщо засіб знаходить користувачів, які не мають властивості поштової скриньки рівня що показують їх часового поясу, цей засіб перевіряє фактичного наради та зустрічі всередині тих календарів, для визначення часового поясу. Ви можете вказати номер елементів календаря, через який потрібно для сканування, інструмент налаштування. На Великі кількість елементів, які ви вкажіть, тим більше часу сканування займе.
  5. У регіоні Невідомий часовий пояс відображення вирішити імена сторінки, інструмент пропонує карта часових поясів, що робить інструмент не розпізнавати відомих операційної системи часовий пояс. Після цього натисніть кнопкуНаступний
  6. Якщо інструмент налаштування знаходить користувачів, які мають декілька Вільний час зони, з'явиться вручну вирішити конфлікт за допомогою визначення одного часовий пояс, з яким для оновлення календаря користувача. Після цього натисніть кнопкуНаступний.
  7. У регіоні Збереження скриньки DNs з невирішених Вільний час Зон сторінки, що залишилися користувачів, хто ще мають не часових поясів інформацію або які мають конфліктні дані часового поясу записані у окремий файл журналу. Натисніть кнопку Наступний.
Процес вилучення часового поясу буде завершено. Список Користувачі і витягнуті Вільний час зон розташований файл вихідного (Output. txt) у Каталог установки.

Додаткові параметри

У нижченаведеній таблиці описано додаткові налаштування що можна настроїти на кроці 2 попередньої процедури.
Згорнути цю таблицюРозгорнути цю таблицю
ПараметрФункціональні можливостіСценарійМіркуванняЗастосування
Оновити лише повторюваних нарадЦе корегувати оновлень лише повторювані збори, які впливають на DST змінити. Одноразові зустрічі, які припадають на розширений період літнього часу, не Оновлено, незалежно від того, чи вони повинні бути оновлені.Якщо комп'ютери в організації були оновлені давним-давно, використовувати цей параметр.

Як правило, люди не створювати одноразові зустрічі багато місяців вперед. Таким чином, якщо оновлення правил літнього часу були встановлені багато місяців раніше, більшість одноразові зустрічі, які припадають на розширений DST період буде створено за допомогою нових правил літнього часу перехід. Ці наради не мають бути оновлені.
Якщо користувач створив на одноразовий зустріч багато місяців вперед, цю нараду не оновлюється, якщо цей параметр вказаний.Цей параметр застосовується до всіх поштових скриньок, щоб всі конференції номери і щоб всі календарі користувача.
Установки оновлення операційної системи ДатаЦей параметр визначає, що одноразових зустрічей що створено або Оновлено після дати, що ви вказали, що не Оновлено.Якщо ви знаєте, точну дату, коли всі клієнтські комп'ютери були Оновлено, цей параметр використовується.

Коли ви це, зустрічей, які є створено після інсталяції оновлення не оновлюються. Ці зустрічі падіння згідно з новими правилами часових поясів.
Цей параметр є ефективним лише тоді, коли на клієнтські комп'ютери були всі оновлені протягом менше ніж за 24 годин і коли є високий проникнення оновлення. (Існує висока проникнення коли відсоток комп'ютерів в організації, які були поновлені є висока 90 відсотків діапазону.)

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

Для конференц-залів мається на що тільки оновлені конференції Номери знаходяться на конкретних часових поясів.

Наслідки для користувача Поштові скриньки є що, якщо в SuppressExchange автоматична інсталяція або на SuppressAll не вказано настройку, лише поштових скриньок користувачів, належать до певного часу зон оновлюються.
Цей параметр застосовується до всі поштові скриньки, всі Конференц-зали та всі календарі користувача.
SuppressExchange і MaxDepthЦі параметри викликають всіх зустрічей в на програма-календар користувача, які впливають на оновлення незалежно від того, зміни Літнього чи користувач є організатором цих елементів календаря.

Якщо на користувач є організатором елемент календаря, учасникам не надсилаються оновлення хто мають поштових скриньок Exchange. Оновлення надіслані учасникам, які не мають обмін Поштові скриньки.

На MaxDepth параметр задає рівень розширення списку розсилки, що виконується, щоб визначити, які учасники мають поштових скриньок Exchange та учасників, які не роблять.
Використовуйте цей параметр, якщо Ви не хочете Exchange користувачам отримувати оновлення зустрічі з організатори для зустрічі, які впливають на розширений період літнього часу.

На SuppressExchange корегувати це краще, ніж у SuppressAll параметр, якщо організація має визначенням Сервер програма-календар системи і якщо засідання заплановано включити учасників, є зовнішніми по організації.
Оновлення не зустрічі надіслані, за винятком -Обмін користувачам. Таким чином, щоб зробити впевнений що копіює же зустрічі оновлюється для всіх можливих учасників, кожен поштової скриньки в організації повинні Оновлено.

Цьому умова може значно збільшити кількість Поштові скриньки, які потребують оновлення. Таким чином, може бути Вільний час обробки збільшилася.

При великих, вкладені списки є на учасника список, це дорого процес визначити учасників на збори та до визначити, чи ці учасники мають поштових скриньок Exchange. Якщо вказати це корегувати та встановити високе значення MaxDepth параметра, значні навантаження може покласти в домені контролери.
Цей параметр застосовується лише до поштових скриньок користувачів.
SuppressAllЦей параметр викликає все зустрічі в календарі користувача, які впливають на DST зміни будуть Оновлений незалежно від користувача Організатор тих програма-календар елементи.

Якщо користувач є організатором елемент календаря, оновлення не надіслано учасникам.
Використовуйте цей параметр, якщо ви не хочете відвідувачів отримувати оновлення зустрічі з організатори для зустрічей, які впливають на розширений період літнього часу.Оновлення наради не надсилаються. Таким чином, щоб зробити впевнений, що копії ж засідання Оновлено для всіх можливих учасників, потрібно оновлювати кожен поштової скриньки в організації.

Цьому умова може значно збільшити кількість поштових скриньок, які потребують оновлення. Таким чином, може бути збільшено Вільний час обробки.

Учасникам, які не роблять мають робити поштових скриньок Exchange не отримувати оновлення. Їх призначення не може бути оновлюється, залежно від електронна пошта системі, що вони працюють і залежно від інтерактивні елементи, що приймає їх адміністратора.
Цей параметр застосовується лише до поштових скриньок користувачів.

Оновити конференц-залів і поштових скриньок ресурсів

Необхідно оновити конференц-залів і уникнути ресурсів поштових скриньок бронювання конфліктів. Для цього виконайте такі дії:
  1. На що Зазначте ресурсів та Конференц-зал Календарі сторінка, введіть або вставте список псевдонімів Конференц-зали у вашій організації. Натисніть кнопку Вирішення для перевірки псевдоніми, і натисніть кнопку Наступний.
  2. На що Усунення часових поясів для ресурсу та Конференція кімнаті календарі сторінки, інструмент пропонує вручну Вкажіть часовий пояс для Конференц-зал, якщо не робить Конференц-зал мати часового поясу. Це зробити і натисніть кнопку Наступний.
  3. Відображення сторінки нагадування нагадати вам, що інструмент Ось-ось оновлення календарів. Натисніть кнопку Наступний.
  4. Зверніть увагу, що рядок стану, посилання на вихідний увійти в систему, і на реального часу відображення виводу засобу відображення. Натисніть кнопкуНаступний.

    Якщо помилка помилки, посилання на Виправлення неполадок документ відображається в нижній частині цієї сторінки.

Оновити програма-календар користувача поштової скриньки

Для цього виконайте такі дії:
  1. На що Настройки оновлення користувача поштової скриньки Календарі сторінка, настроїти параметри для оновлення.

    Якщо не вказано в SuppressExchange абоSuppressAll Додаткові параметри, виберіть часових поясів, які є постраждалих від DST. В іншому випадку, виберіть усі часових поясів.

    Натисніть кнопкуНаступний.
  2. Відображення сторінки нагадування нагадати вам, що інструмент Ось-ось оновлення календарів. Натисніть кнопку Наступний.
  3. Зверніть увагу, що рядок стану, посилання на вихідний увійти в систему, і на реального часу відображення виводу засобу відображення. Після оновлення завершити, натисніть кнопку Наступний.

    Якщо помилка помилки, посилання на виправлення неполадок документ відображається в нижній частині цього сторінки.
  4. Натисніть кнопку Готово.

Обмін інструмент лог-файли і підкаталоги

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

Засіб Exchange створює таких файлів у регіоні Каталог установки:
  • Output. txt

    Цей файл містить список всіх поштових скриньок користувачів, були витягнуті разом з їх часові пояси.
  • TimeZoneExtraction.log

    Цей журнал містить комбінованого виводу часового поясу процес вилучення для всіх серверів.
  • ResourceUpdate.log

    Цей журнал містить виводу для процес оновлення Конференц-зали та для поштових скриньок ресурсів.
  • UserUpdate.log

    Цей журнал містить комбінованого виводу користувача процес оновлення поштової скриньки для всіх серверів.
  • CalendarScan.log

    Цей журнал містить комбінованого виводу календаря Процес сканування для всіх серверів.
  • ConflictUsers.txt

    Цей журнал містить список користувачів, які мають конфлікту часові пояси. Наприклад, властивості поштової скриньки користувачів показують, що вони належать до декількох часових поясів.
  • NonExistent.txt

    Цей журнал містить список користувачів, які мають не часових поясів інформації.

Підкаталоги

Засіб Exchange створює такі підкаталогів у регіоні Каталог установки:
  • Ресурс

    Це робоча підкаталозі для процес оновлення для конференц-залів і поштових скриньок ресурсів. Цей каталог містить такі файли:
    • Msextmz.log

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

      Цей файл містить список поштових скриньок.
    • Processed.txt

      Цей файл містить список поштових скриньок, які були успішно оновлено.
    Примітка Всі робочі підкаталоги містять ці файли.

    На Підкаталог ресурс також містить наступні підкаталог:
    • Журналів

      Цей підкаталогу містить оновлення журнали для кожної поштової скриньки що було успішно оновлено. Кожне оновлення журналу має містити список зустрічі, які були оновлені.
  • Server_Name

    Існує один підкаталозі для кожного сервера на якому була виконана часового поясу процес вилучення або оновлення календаря. Ці підтеки містять такі підкаталоги:
    • CalendarScan

      Це робоча підкаталозі для сканування програма-календар процес.
    • Екстракт

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

      Це робоча підкаталог за скриньки користувача оновити процес. Він містить такі підкаталог:
      • Журналів

        Цей підкаталогу містить оновлення журнали для кожної поштової скриньки що було успішно оновлено. Кожне оновлення журналу має містити список зустрічі, які були оновлені.

Що робити після того, як засіб обміну

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

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

Відомі проблеми

  • Повторювані зустрічі, створені в Outlook Web Access не оновлюються засіб Exchange

    Якщо інсталювати оновлення сервера Exchange на на Exchange server перед оновленням поштових скриньок, повторювані зустрічі, які є створені в Outlook Web Access не оновлюються засіб Exchange.

    Щоб вирішити цю проблему, видалити оновлення сервера Exchange, запустіть на Обмін інструмент, а потім переінсталювати сервер Exchange оновлення на біржі сервер.
  • Exchange 2007 необхідно перезавантажити після того, як засіб обміну

    Для правильного відображення елементів календаря, необхідно перезавантажити застосунок-служба обміну після того, як ви запустіть засіб Exchange для Outlook Web Access у Exchange 2007.
  • Не вдалося інсталювати засіб Exchange

    Засіб Exchange не установлено успішно якщо Існує будь-якої з таких розділів реєстру:
    • HKEY_CLASS_ROOT\Outlook.Application.9
    • HKEY_CLASS_ROOT\Outlook.Application.10
    У цій ситуації з'являється таке протокол IMAP про помилку під Вільний час спроби інсталювати засіб Exchange:
    Exchange Server Інструмент перебазування календаря не можна інсталювати з цією версією Microsoft Outlook.
    Щоб вирішити цю проблему, видаліть цих розділів реєстру інсталюйте засіб обміну а потім відновити реєстр ключі.

    Важливі Цей розділ, спосіб або завдання містять кроки, які говорять вам, як до внести зміни до реєстру. Однак, серйозні проблеми можуть виникнути, якщо змінити на реєстр неправильно. Тому переконайтеся, що ви виконайте такі інтерактивні елементи. ретельно. Для додаткового захисту архівувати реєстру перед внесенням. Потім ви можете відновити реєстр у разі виникнення проблеми. Для отримання додаткової інформації про те, як резервного копіювання і відновлення реєстру, клацніть наступну статтю номер статті в базі знань Microsoft Knowledge Base:
    322756 Як створити архівувати та відновити реєстр у Windows
  • Існує обмеження кількості поштових скриньок, які можуть оброблятися на сервері

    У списку користувачів режимі та в режимі витягнення часового поясу, Msextmz.exe може обробляти лише 65 535 поштових скриньок на сервері. Якщо на сервері понад 65 535 поштових скриньок, деякі поштові скриньки не оброблятимуться.
  • Спільної папки календарів не Оновлено

    Засіб для Exchange оновлює спільної папки календарі. Відомості про оновлення спільної папки програма-календар Перегляньте Документація для засіб для Outlook.
  • Ви можете запустити засіб для Outlook і засіб для Exchange в тому ж середовищі

    Якщо запустити засіб для Exchange на поштову скриньку, яка має вже було оновлено засобом Outlook, або, навпаки, ви досвід жодних побічних ефекти. Однак, якщо ви запустіть засіб Exchange, немає необхідності для користувачів запустити засіб для Outlook окремо.
  • Non зустрічі, нагадування з'являються пізніше, ніж очікувалося

    Non зустріч нагадування для поштових скриньок, які оновлюються на Засіб Exchange не оновлюються, якщо Outlook ніколи не має підключення до поштової скриньки у режимі Online. У цій ситуації, нагадування з'являються одну годину пізніше очікувалося.

    Якщо Outlook ніколи не має підключення в режимі онлайн, ви повинні Налаштуйте неправильні нагадування для зустрічей календаря, засіб для Outlook знаходить. Крім того, папка пошуку нагадування не існує в поштовій скриньці. Таким чином, засіб не оновлює елементів електронна пошта, контакти або нагадувань.

    Наприклад, засіб не оновив нагадування на елемент електронна пошта щоб стежити за раз в майбутньому. Інструмент також не оновлює на нагадування про завдання елемента, який має нагадування.
  • З'являється протокол IMAP про помилку: "не вдалося інсталювати, тому, що попередні версії 'Microsoft Exchange засіб оновлення календаря' були виявлені. Видаліть їх і знову запустити цю програму установки"

    Якщо раніше інстальовано оновлення календаря Exchange Інструмент Версія 1.0, вам потрібно видалити перед встановленням Exchange Версія засобу оновлення календаря 2.0.

    Засіб оновлення календаря Exchange Версія 1.0 була поширена саморозгортання виконуваного файлу, який містив два пакети MSI (Msextmz.msi і Msextmzcfg.msi). Слід видалити обидва пакунки, перш ніж інсталювати версію 2.0 засіб Exchange.

    Якщо ви все ще виникають проблеми під Вільний час інсталяції версії 2.0 засіб Exchange Спробуйте повторно встановити і потім видалити версію 1.0 засіб для Exchange. Зробити це за допомогою MSI пакунки, а не за допомогою на запит на додавання або видалення Програми Функція на панелі керування. Перезавантажте комп’ютер-зразок, а потім встановити версію 2.0 засіб Exchange.

    Якщо ця процедура не не працюють, витягти двійкові файли безпосередньо з MSI пакунки.
  • Коли ви запустити засоби оновлення для Outlook або Exchange, зсуваються на одну годину на поштових скриньках, де основний маркер часовий пояс — Новозеландський стандартний Вільний час

    Це ускладнення виникає в таких ситуаціях істинно:
    • Запустити засоби оновлення для Outlook або Exchange на на комп’ютер-зразок під керуванням Windows Vista.
    • основний маркер часовий пояс поштових скриньок, які в даний Вільний час Оновлений є Новозеландський стандартний Вільний час.
    Щоб вирішити цю проблему, потрібно запустити Outlook або Обмін засоби оновлення в поштових скриньках другий раз, або після січня 1, 2008.

    Така поведінка виникає тому, що Windows Vista ручками часового поясу зробити інформацію по-іншому, ніж інші версії Windows. Якщо не запускати на Outlook або Exchange оновлення інструменти знову або після 1 січня 2008 року, всі зустрічі в у другому розширеному періоді літнього часу буде зсунуто на одну годину. Другий DST подія включає дат від 16 березня 2008 по 6 квітня 2008 року.

    Якщо ви не бажаєте чекати до 1 січня 2008 року, щоб оновити зустрічі у другому DST подія, можна запустити засоби оновлення для Outlook або Exchange з комп'ютера, що є під керуванням Windows XP або Windows Server 2003.
  • Дату у форматі MM/DD/YYYY змінюється на M/DD/YYYY форматі

    Встановити на Дата патч операційної системи параметр в обмін Засіб оновлення календаря. Після цього, засіб оновлення календаря Exchange не функціонує належним чином. Ця проблема виникає тому, що формат дати ДД/ММ/РРРР змінюється на M/DD/YYYY.

    Крім того, протокол IMAP про помилку, подібне до таке протокол IMAP про помилку заноситься до журналу помилок:
    [28/02/2008 7: 10: 21 Ранку] [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 - Востаннє переглянуто: 12 липня 2012 р. - Редакція: 2.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 KbMtuk
Машинний переклад
УВАГА! Цю статтю переклала програма машинного перекладу Microsoft, а не людина. Корпорація Microsoft пропонує вам як машинні переклади, так і переклади фахівців, щоб Ви мали доступ до всіх статей бази знань рідною мовою. Проте стаття, яку переклав комп’ютер, не завжди бездоганна. Вона може містити лексичні, синтаксичні або граматичні помилки. Так само помиляється іноземець, спілкуючись вашою рідною мовою. Корпорація Microsoft не несе відповідальність за жодні неточності, помилки або шкоду, завдану неправильним перекладом змісту або його використанням з боку користувачів. Крім того, корпорація Microsoft часто оновлює програму машинного перекладу.
Клацніть тут, щоб переглянути цю статтю англійською мовою: 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