Cómo abordar el horario de verano con la herramienta de actualización del calendario de Exchange

Seleccione idioma Seleccione idioma
Id. de artículo: 941018 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

INTRODUCCIÓN

Horario de verano es un sistema para establecer los relojes con antelación para que amanecer y el atardecer se produzcan en una hora posterior. El efecto es más de verano en la noche. Muchos países implementan el horario de verano. Mayoría de estos países tienen sus propias reglas y regulaciones para el momento del horario de verano comienza y termina.

Pueden cambiar las fechas del horario de verano (DST) de año a año. Los usuarios de Microsoft Outlook que se tienen que actualizar su Outlook calendario cada vez que cambian las reglas de DST. Las fechas entre el anterior Reglas de DST y las reglas de horario de verano actuales se conocen en este artículo como el "ampliación del horario."

En este artículo se describe las acciones que usted puede tomar para ajustar los elementos del calendario de Outlook que se producen durante la extendida Período de horario de verano. En este artículo también describe las acciones que se deberían adoptar para actualizar los elementos de calendario que se almacenan en Microsoft Exchange Server de acuerdo con las nuevas reglas de DST. La solución que se presenta en este artículo implica la Herramienta de actualizar calendario de Microsoft Exchange ("la herramienta de Exchange").

Para Para obtener más información acerca de cómo prepararse para los cambios del horario de verano en 2007 (DST 2007) para todos los productos de Microsoft afectados, visite el siguiente Sitio Web de Microsoft:
http://support.Microsoft.com/GP/cp_dst
En 2011, el gobierno ruso aprobó una ley para cancelar el horario de verano (DST). Para obtener más información, visite el siguiente sitio Web de Microsoft:
http://support.Microsoft.com/GP/cp_dst#tab0
Para obtener más información en ruso, visite el siguiente sitio Web de Microsoft:
http://support.Microsoft.com/GP/cp_dst/RU#tab0

Más información

Acerca de la herramienta de Exchange

Después de instalar las actualizaciones de horario de verano para Microsoft Windows, todo el viejo las citas que tienen lugar durante los períodos de cambio de horario de verano serán incorrectamente muestra como una hora después. Esto es cierto para ambos periódica y citas de instancia única. Por lo que debe actualizar estas citas que ellos se mostrará correctamente en Outlook, en Microsoft Office Outlook Web Access, y en las aplicaciones que se basan en Collaboration Data Objects (CDO).

Outlook proporciona una herramienta que se denomina la actualización de datos de zona horaria Herramienta para Microsoft Office Outlook ("la herramienta de Outlook"). Esta herramienta permite a los usuarios Para actualizar sus propios calendarios.

Para obtener más información acerca de la actualización de datos de zona horaria La herramienta, haga clic en el número de artículo siguiente para verlo en Microsoft Microsoft Knowledge Base:
931667Cómo abordar los cambios de horario de verano en 2007 con la herramienta de actualización de datos de zona horaria para Microsoft Office Outlook
La herramienta de actualización del calendario de Exchange ("the Exchange herramienta") le ayuda a evitar las dificultades que los administradores enfrentan en la implementación de la herramienta de Outlook ampliamente a todos los usuarios y para asegurarse de que cada usuario ejecuta la Outlook de la herramienta correctamente.

Descripción de alto nivel de la herramienta de Exchange

La herramienta de Exchange consta de dos archivos ejecutables independientes. Estos los archivos se describen en la tabla siguiente.
Contraer esta tablaAmpliar esta tabla
Nombre de archivoDescripción
MSEXTMZ.exe Este archivo ejecutable extrae la zona horaria información de buzones en un servidor que ejecuta Exchange Server. Esto archivo ejecutable también actualiza los calendarios del buzón de una lista especificada de usuarios.
MSEXTMZCFG.exe Este archivo ejecutable es un herramienta de configuración que realiza la mayoría de los pasos que intervienen en actualización de un servidor de Exchange Server.

Acerca de la nueva versión de la herramienta de Exchange

En función de los comentarios del cliente, era de una nueva versión de la herramienta de Exchange publicado el 13 de agosto de 2007. En este artículo se refiere a la nueva versión de la Herramienta de Exchange. Si está ejecutando una versión anterior de la herramienta de Exchange Desinstálelo y, a continuación, instale la nueva versión.

La nueva versión de la herramienta de Exchange incluye las siguientes mejoras:
  • La extracción de zona horaria y los procesos de actualización del calendario son acelerado por cuatro.
  • La interfaz de usuario para la herramienta de configuración es más optimizado e intuitivo.
  • La capacidad de actualizar el recurso y salas de conferencias buzones de correo ahora está integrado en la herramienta de configuración.
  • La capacidad de actualizar los buzones de usuario ahora está integrada en el herramienta de configuración.
  • Ahora se incluye un documento de solución de problemas con el Herramienta de Exchange y está integrado en la herramienta de configuración.
  • El algoritmo de extracción de zona horaria y el control de errores se han mejorado las capacidades.
  • El proceso de registro es más fácil de usar.

Riesgo de ejecutar la herramienta de Exchange

Al ejecutar la herramienta de Exchange, se corre el riesgo que las citas de instancia única no se pueden actualizar correctamente. Por ejemplo, citas de instancia única que era un usuario creado después de que el sistema operativo actualizado en mayo actualizarse de forma incorrecta.

Para reducir este riesgo, utilice uno de los métodos siguientes:
  • Reducir el intervalo entre el momento en que se actualizan los equipos cliente y el tiempo que se actualizan los calendarios del buzón.
  • Si los equipos de la organización se actualizaron mucho tiempo Atrás, utilice el Sólo se actualizan las reuniones periódicas configuración enConfiguración avanzada.

    Normalmente, las personas que no se crea citas de instancia única muchos meses de antelación. Por lo tanto, si el horario de verano las actualizaciones se instalaron muchos meses antes, la mayoría de las reuniones de instancia única que se celebran en la ampliación del horario se habrá creado mediante el uso de la nueva Reglas de transición del horario de verano. Estas reuniones no tengan que actualizarse.
  • Si sabe exactamente cuándo fecha todos los equipos cliente fueron actualizados, utilice el Fecha de revisión del sistema operativo configuración enConfiguración avanzada. Si se especifica una fecha, instancia única las citas que se crearon después de esa fecha no se actualizan mediante el intercambio herramienta.
Nota Si ejecuta la herramienta de Outlook o la herramienta de Exchange en un cliente equipo que ejecuta Windows Vista y ejecutar la herramienta contra los buzones Cuando la zona horaria hora estándar de Nueva Zelanda, debe ejecutar la herramienta de un segunda vez, en o después del 1 de enero de 2008. Para obtener más información, vea lo conocido" temas"sección.

Opciones para actualizar los buzones

En la tabla siguiente se muestra cinco opciones que puede utilizar para actualizar buzones de usuario a utilizar las reglas de zona horaria de DST 2007.
Contraer esta tablaAmpliar esta tabla
OpciónProfesionales deInconvenientes
Distribuir la herramienta de Outlook a cada usuario y, a continuación, indicar a usuarios que actualicen sus propios buzones. Esta opción evita el riesgo que está asociado con la ejecución de la herramienta de Exchange. Es difícil garantizar que todos los usuarios ejecutarán la herramienta de Outlook correctamente y en forma oportuna forma.

Los usuarios que no tengan Outlook no podrán ejecutar el Herramienta de Outlook.

Debe realizar un esfuerzo de formación adicional para disminuir la confusión de los usuarios.
Ejecute la herramienta de Exchange para afectados todos los usuarios y servidores. Esta opción proporciona una experiencia simplificada para los usuarios. Existe un riesgo asociado con la ejecución de la herramienta de Exchange, como se describe en la sección de "Riesgo de ejecutar la herramienta de Exchange".
Ejecute la herramienta de Exchange para actualizar sólo las citas periódicas. Permitir a los usuarios actualizar las citas de instancia única en sus propios buzones mediante la herramienta de Outlook. Hay menos riesgo de citas de instancia única se ha actualizado correctamente. Son los inconvenientes de ejecutar la herramienta de Outlook combinado con los inconvenientes de ejecutar la herramienta de Exchange.
Ejecute la herramienta de Exchange ni la herramienta de Outlook. Pedir a los usuarios para examinar sus calendarios y vuelvan a escribir las citas según sea necesario. Esto opción evita el riesgo de que está asociado con la ejecución de la herramienta de Exchange. A menos que todos los usuarios vuelvan a escribir todas las citas afectadas, algunos del calendario elementos se estarán desfasada una hora durante el período adicional DST.

Primero debe hacer un esfuerzo de formación adicional para disminuir la confusión de los usuarios.
Distribuir la herramienta de Outlook a cada usuario y, a continuación, indicar a usuarios que actualicen sus propios buzones. A continuación, utilice el modo de extracción de zona horaria de la herramienta de Exchange para determinar si los usuarios están ejecutando la herramienta de Outlook.

Si los usuarios no ejecutan la herramienta de Outlook, el administrador puede Ejecute la herramienta de Exchange.
Esta opción reduce el riesgo de que los usuarios no ejecutar la herramienta en forma oportuna y evita el riesgo de que está asociado con la ejecución de la herramienta de Exchange. Esto no es una opción si los usuarios son ejecutando Microsoft Office Outlook 2007.

Cómo instalar la herramienta de Exchange

La herramienta de actualización del calendario de Exchange está disponible para su descarga en el forma de un archivo ejecutable autoextraíble (Msextmz.exe). Esta herramienta está disponible para su descarga desde Microsoft Download Center:

Contraer esta imagenAmpliar esta imagen
Descargar
Descargar el paquete de la herramienta de actualización del calendario de Exchange ahora.

Se crea una máquina virtual para ayudarle a instalar y utilizar la herramienta de Exchange. La máquina virtual se basa en Microsoft Windows Server 2003, Outlook 2007, Microsoft Office Excel 2007 y Microsoft Office Word 2007. La máquina virtual funciona en Microsoft Virtual PC 2004 y en Microsoft Virtual Server 2005 R2.

Para obtener más información acerca de la máquina virtual para la herramienta de actualización del calendario de Exchange, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
933185Una máquina virtual está disponible para ayudarle a implementar las actualizaciones del calendario del horario de verano de 2007 en una organización de Exchange
Para obtener más información acerca de cómo descargar el soporte técnico de Microsoft archivos, haga clic en el número de artículo siguiente para verlo en Microsoft Microsoft Knowledge Base:
119591 Cómo obtener archivos de soporte de Microsoft de los servicios en línea
Microsoft exploró este archivo en busca de virus. Microsoft ha utilizado al máximo software de detección de virus actual que estaba disponible en la fecha en que el archivo se ha registrado. El archivo se almacena en servidores de seguridad mejorada que ayudan a evitar cambios no autorizados en el archivo.

Idiomas que son compatibles con la herramienta de Exchange

La herramienta de Exchange está disponible sólo en inglés. La herramienta se ejecutará sólo en un equipo inglés (Estados Unidos).

Versiones de Exchange Server que son compatibles con la herramienta de Exchange

La herramienta de Exchange puede actualizar los buzones en las siguientes versiones de 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

Sistemas operativos que son compatibles con la herramienta de Exchange

La herramienta de Exchange se ejecutará en las versiones de 32 bits de las siguientes acciones sistemas operativos:
  • Microsoft Windows Server 2003
  • Microsoft Windows XP
  • Windows Vista

Qué hacer antes de ejecutar la herramienta de Exchange

Instalar las actualizaciones

Antes de ejecutar la herramienta de Exchange, asegúrese de que ese cliente y servidor los equipos se actualizan correctamente. Para ello, instale la actualización de horario de verano de Windows en los clientes y en los servidores. Para obtener más información obtener información, haga clic en el número de artículo siguiente para verlo en el Microsoft Knowledge Base:
942763Actualización acumulativa de zona horaria de diciembre de 2007 para sistemas operativos Microsoft Windows

Si está ejecutando Microsoft Exchange Server 2003 Service Pack 2 (SP2), instalar una o ambas de las siguientes actualizaciones, como apropiado para su organización:
  • Actualización 911829
  • Actualización 924334
Para obtener más información acerca de estas actualizaciones, haga clic en los siguientes números de artículo Para ver los artículos en Microsoft Knowledge Base:
911829Recibe un mensaje de error cuando intenta realizar tareas de edición, o debe hacer clic en el marco de composición en Outlook Web Access
924334 El formulario Redactar mensaje deja de responder después de instalar Internet Explorer 7.0 y el control S/MIME en un cliente de Outlook Web Access en Exchange Server 2003
Si los usuarios están dentro de la Jerusalén, Central Brasileño, o la zona de horaria de Sudamérica, lea las instrucciones de la siguiente artículo de Microsoft Knowledge Base:

943390 Algunos elementos de calendario de Outlook se restablecen incorrectamente cuando se utiliza la herramienta de actualización de datos de zona horaria de Outlook para adaptarse a los cambios de horario de verano en determinadas zonas horarias

Compruebe los requisitos del sistema

Debe ejecutar la herramienta de Exchange sólo en un equipo para el que el las condiciones siguientes son verdaderas:
  • El equipo tiene el Service Pack de Microsoft Office Outlook 2003 2 (SP2) o Microsoft Office Outlook 2007 instalado.
  • El equipo tiene la herramienta de datos de zona horaria de Outlook instalado.
  • Microsoft.NET Framework versión 2.0 está instalado en el equipo cliente.
No se puede ejecutar la herramienta de Exchange en un equipo que está ejecutando Exchange Server o las herramientas de administración del sistema de Exchange. Si intenta instalar la herramienta de Exchange en un equipo que ejecuta Exchange Server o el intercambio Herramientas de administración del sistema, recibirá el mensaje de error siguiente:
No se puede instalar la herramienta de actualizar calendario de Microsoft Exchange con Microsoft Exchange.

Compruebe los permisos y otros requisitos de usuario

Compruebe que las siguientes condiciones son verdaderas:
  • Administrar permisos de almacén de información en cada cambio Se actualizan la base de datos de mensajes de servidor (MDB).
  • Los permisos Enviar como para todos los buzones son actualizado.
  • Los permisos de acceso al buzón completos para todos los buzones son actualizado.
  • Se conceden permisos de administrador local en el equipo ejecuta la herramienta de Exchange.

Acerca de la secuencia de comandos "Conceder permiso de buzón"

Puede utilizar la secuencia de comandos de ejemplo GrantMailboxPermission.vbs para conceder un acceso total al buzón de usuario de dominio y los permisos Enviar como a todos buzones.

Esta secuencia de comandos sólo pueden ejecutar un Exchange Server Administrador en un equipo que ejecuta Exchange 2000 Server o Exchange Server 2003. No se puede ejecutar esta secuencia de comandos en un equipo que ejecuta Exchange Server 2007. Sin embargo, puede utilizar el Shell de administración de Exchange para conceder la permisos necesarios.

El código de la secuencia de comandos .vbs se proporciona en el Sección "Referencias". En la tabla siguiente se describe los dos modos en que este se ejecuta la secuencia de comandos.
Contraer esta tablaAmpliar esta tabla
ModoComandoDescripción
Agregar CScript GrantMailboxPermission.vbs ? de Add NombreDeDominio \ Nombre de usuario NombreDeArchivo Este comando concede a la NombreDeDominio \ Nombre de usuario acceso total al buzón del usuario y los permisos Enviar como a los buzones de usuario que se enumeran en la entrada archivo.

El archivo de entrada debe ser un archivo de texto que contiene la herencia nombres de dominio de los buzones de usuario. Estos nombres deben estar delimitados por carro Fuente de retorno y línea (CRLF).

La secuencia de comandos se genera una Archivo GrantMailboxPermission.log. Este archivo es un registro de los buzones que se procesaron. La primera línea del archivo de registro es el NombreDeDominio \ Nombre de usuario usuario que se concede acceso. No elimine este archivo. Este archivo se utiliza en el modo quitar.

Si una explícita "Denegar" el acceso se asigna al usuario, la secuencia de comandos registra la información en un archivo denominado "GrantMailboxPermission.err". El secuencia de comandos no concederán o cambiar el permiso.

Si el usuario forma parte un grupo de seguridad que se ha asignado "Denegar" el acceso, concede a la secuencia de comandos Permisos de acceso al buzón y enviar como completos. Sin embargo, el usuario no podrá Para iniciar sesión en el buzón. Todos los errores se registran el Archivo GrantMailboxPermission.err.
Quitar CScript GrantMailboxPermission.vbs barresdoraEste comando quita el acceso total al buzón y enviar como permisos a los buzones que se enumeran en la GrantMailboxPermission.log archivo de la NombreDeDominio \ Nombre de usuario usuario. El NombreDeDominio \ Nombre de usuario usuario se especifica en el Archivo GrantMailboxPermission.log.
Notas
  • Al ejecutar esta secuencia de comandos en el equipo que está ejecutando Exchange Server, la secuencia de comandos devuelve un carácter de punto (.) cuando la secuencia de comandos un usuario se procesa correctamente. La secuencia de comandos devuelve un punto de exclamación carácter (!) cuando la secuencia de comandos no procesa correctamente un usuario.
  • No puede ser el archivo de salida del modo de extracción de zona horaria se utiliza como un archivo de entrada para esta secuencia de comandos. Para crear el archivo de entrada para este secuencia de comandos, pegue el contenido del archivo de salida del modo de extracción de zona horaria en El Bloc de notas, guardar el contenido como un nuevo documento y, a continuación, utilice el nuevo documento como el archivo de entrada.

Cómo utilizar la herramienta de Exchange

Para utilizar la herramienta de Exchange, inicie la actualización del calendario de Exchange Herramienta de configuración (Msextmzcfg.exe). Este programa le ayudará con todo el proceso de actualización de calendarios.

Ejecutar el proceso de extracción de zona horaria

Para actualizar los calendarios del buzón, debe determinar la zona horaria del los calendarios. El proceso de extracción de zona horaria examina las propiedades y el citas de los calendarios de buzón para determinar sus zonas horarias. Para ejecutar el tiempo de proceso de extracción de zona, siga estos pasos:
  1. En la página de bienvenida, haga clic en Siguiente.

    Nota La página de bienvenida le presenta la herramienta de configuración y se describen los permisos necesarios para ejecutar la herramienta. La página también Proporciona un vínculo a este artículo.
  2. Especificar la configuración de la herramienta de configuración. Nos Recomendamos que asigne al menos 200 megabytes (MB) de espacio en disco para registro.

    Si se desea cambiar la configuración predeterminada, haga clic enConfiguración avanzada. Para obtener más información acerca de la avanzada configuración, consulte la tabla que sigue a este procedimiento.
  3. Seleccione los servidores de Exchange en Active Directory local bosque del servicio de directorio que desea actualizar. A continuación, haga clic enSiguiente Para iniciar el proceso de extracción de zona horaria.

    Nota Si ya ha realizado la extracción de zona horaria, puede omitir Este paso haciendo clic en Omitir.

    Tenga en cuenta que un estado barra, un vínculo en el registro de salida y una pantalla en tiempo real de la zona horaria se muestran el proceso de extracción. Después de la zona horaria es el proceso de extracción completar, haga clic en Siguiente.

    Si se producen errores, un se muestra el vínculo al documento de solución de problemas.
  4. Configurar el Buzones sin tiempo Zonas página y haga clic en Siguiente para analizar el calendario elementos.

    Nota Si la herramienta encuentra que los usuarios que no tienen las propiedades de nivel de buzón que indica su zona horaria, la herramienta examina las citas y reuniones reales dentro de los calendarios para determinar la zona horaria. Puede especificar el número elementos del calendario a través del cual desea que la herramienta de configuración para analizar. El mayor el número de elementos que se especifican, más tiempo tardará la digitalización.
  5. En el Resolver la presentación de la zona horaria desconocida nombres página, la herramienta le pide que asigne las zonas horarias que hace la herramienta no se reconoce a una zona de horaria conocida del sistema operativo. Después de hacer esto, haga clic enSiguiente
  6. Si encuentra que la herramienta Configuración de los usuarios que tienen múltiples las zonas horarias, se le pida para resolver manualmente el conflicto, especificando una zona horaria con la que se va a actualizar el calendario del usuario. Después de hacer esto, haga clic enSiguiente.
  7. En el Guardar el DNs de buzón con el tiempo sin resolver Zonas página, los demás usuarios que todavía no tienen ninguna zona horaria información o que todavía tienen información de zona horaria en conflicto se graban en un archivo de registro independiente. Haga clic en Siguiente.
El proceso de extracción de zona horaria está completado. La lista de los usuarios y de las zonas horarias extraídas se encuentra en el archivo de salida (Output.txt) en el directorio de instalación.

Configuración avanzada

La tabla siguiente describe la configuración avanzada que Puede configurar en el paso 2 del procedimiento anterior.
Contraer esta tablaAmpliar esta tabla
Configuración deFuncionalidadEscenarioConsideraciones acerca deAplicabilidad
Actualizar sólo las reuniones periódicasEsto cambian la configuración actualizaciones sólo reuniones periódicas que se ven afectadas por el horario de verano. Las citas de instancia única que hay en la ampliación del horario no son se actualizan independientemente de si se deben actualizar.Si los equipos en la organización se actualizaron hace mucho tiempo, utilice esta opción.

Normalmente, la gente no cree citas muchos meses de antelación. Por lo tanto, si las actualizaciones de horario de verano se instalaron muchos meses antes, la mayoría de las reuniones de instancia única que entran dentro de la ampliación del DST período se creó mediante el uso de las nuevas reglas de transición del horario de verano. Estos las reuniones no tengan que actualizarse.
Si un usuario ha creado una instancia única cumplir con muchos meses de antelación, no se actualiza esta reunión si esta configuración es especificado.Esta configuración se aplica a todos los buzones, a todas las conferencias salas y a todos los calendarios de usuario.
Instalación de la revisión de sistema operativo FechaEsta opción especifica que una instancia única citas que se crean o se actualiza después de la fecha que especifique no son actualizado.Si conoce la fecha exacta cuando eran todos los equipos cliente actualizado, utilice esta configuración.

Si lo hace, las reuniones que están creado después de instalar la actualización no se actualizan. Se dividen en estas reuniones con las nuevas reglas de zona horaria.
Esta configuración es efectiva sólo cuando el los equipos cliente fueron todos actualizados en menos de 24 horas y cuando no hay alta penetración de la actualización. (Hay penetración alta cuando el porcentaje equipos de la organización que se han actualizado está en la alta intervalo de 90%.)

Además, los administradores pueden especificar sólo uno actualizar la fecha. Reuniones que se crean en las zonas horarias que corresponden a específicos se actualización y conjuntos de específicos de tiempo se deben actualizar las zonas.

La implicación para salas de conferencia es que sólo actualiza la conferencia las salas son en las zonas horarias específicas.

La implicación para el usuario los buzones es que, si el SuppressExchange establecimiento o en el SuppressAll no se especifica el valor, sólo los buzones de usuario que pertenecer a la hora se actualizan las zonas.
Esta configuración se aplica a todos los buzones, para todas las salas de conferencias y para todos los calendarios de usuario.
SuppressExchange y MaxDepthEsta configuración hace que todas las citas de un calendario del usuario que se ven afectados por el cambio de horario de verano se actualice con independencia de Si el usuario es el organizador de dichos elementos del calendario.

Si el Organizador es el usuario de un elemento del calendario, las actualizaciones no se envían a los asistentes que disponen de buzones de Exchange. Las actualizaciones se envían a los asistentes que no dispongan de Exchange buzones.

El MaxDepth configuración especifica el nivel de de expansión de la lista de distribución que se realiza para determinar qué asistentes tener buzones de Exchange y que los asistentes no lo hace.
Utilice esta configuración si no desea recibir actualizaciones de reunión de los organizadores para los usuarios de Exchange reuniones que se ven afectadas por la ampliación del horario.

El SuppressExchange es mejor que la configuración de la SuppressAll establecer si la organización tiene no es de Exchange Si las reuniones se programan para incluir los asistentes y sistemas de servidores de calendario que son externos a la organización.
Se enviará ninguna actualización de la reunión, excepto a los usuarios de sistemas distintos de Exchange. Por lo tanto, para hacer seguro que copia de la misma reunión se actualizan para todos los posibles asistentes, todos los buzones de la organización deben puede actualizar.

Esta condición puede aumentar significativamente el número de buzones que tengan que actualizarse. Por lo tanto, los tiempos de procesamiento pueden ser aumentado.

Cuando es grande, listas de distribución anidada se encuentran en el Asistente lista, es un proceso costoso para determinar a los asistentes para una reunión y a Determine si los asistentes tienen buzones de Exchange. Si esto se especifica configuración y el conjunto que se puede colocar un alto valor para el parámetro MaxDepth , una carga significativa en el dominio controladores.
Esta configuración sólo se aplica a los buzones de usuario.
SuppressAllEsta configuración hace que todo cambian las citas de calendario de un usuario que se ven afectadas por el DST para ser actualizan independientemente de si el usuario es el organizador de esos calendario elementos.

Si el usuario es el organizador de un elemento del calendario, las actualizaciones son no se envían a los asistentes.
Utilice esta opción si no desea que los asistentes recibir actualizaciones de reunión de los organizadores de reuniones que se ven afectados los ampliación del horario.Se enviará ninguna actualización de reunión. Por lo tanto, para hacer seguro de que las copias de la misma reunión se actualizan para todos los posibles asistentes, se deben actualizar todos los buzones de la organización.

Esta condición puede aumentar significativamente el número de buzones que tengan que actualizarse. Por lo tanto, se pueden aumentar los tiempos de procesamiento.

Asistentes que no lo hace tener buzones de Exchange no no recibir actualizaciones. No pueden ser sus propias citas actualizado, según el sistema de correo electrónico que se está ejecutando y en función de las acciones que toma su administrador.
Esta configuración sólo se aplica a los buzones de usuario.

Salas de conferencias de actualización y los buzones de recursos

Debe actualizar salas de conferencias y buzones de recursos para evitar entra en conflicto de reserva. Para ello, siga estos pasos:
  1. En el Especificar recursos y sala de conferencias Calendarios la página, escribe o pega la lista de alias de salas de conferencias en su organización. Haga clic en Resolver para validar los alias, y, a continuación, haga clic en Siguiente.
  2. En el Resolver las zonas horarias de recursos y Calendarios de la sala de conferencia página, la herramienta le pide que manualmente especificar la zona horaria de una sala de conferencias, si no lo hace la sala de conferencias dispone de una zona horaria. Ello y, a continuación, haga clic en Siguiente.
  3. Se muestra una página de aviso para recordarle que la herramienta está a punto de actualizar los calendarios. Haga clic en Siguiente.
  4. Tenga en cuenta que una barra de estado, un vínculo a la salida de iniciar una sesión, y un pantalla en tiempo real de la salida de la herramienta se muestran. Haga clic enSiguiente.

    Si se producen errores, un vínculo a la documento de solución de problemas se muestra en la parte inferior de esta página.

Actualizar el calendario del buzón de usuario

Para ello, siga estos pasos:
  1. En el Configuración para actualizar el buzón del usuario Calendarios la página, configure las opciones para la actualización.

    If no se ha especificado el SuppressExchange oSuppressAll Configuración avanzada, seleccione las zonas horarias que están afectados por el horario de verano. En caso contrario, seleccione todas las zonas horarias.

    Haga clic enSiguiente.
  2. Se muestra una página de aviso para recordarle que la herramienta está a punto de actualizar los calendarios. Haga clic en Siguiente.
  3. Tenga en cuenta que una barra de estado, un vínculo a la salida de iniciar una sesión, y un pantalla en tiempo real de la salida de la herramienta se muestran. Una vez la actualización completar, haga clic en Siguiente.

    Si se producen errores, un vínculo con el documento de solución de problemas se muestra en la parte inferior de este página.
  4. Haga clic en Finalizar.

Archivos de registro de herramienta de Exchange y sus subdirectorios

Archivos de registro

La herramienta de Exchange crea los siguientes archivos de registro en el directorio de instalación:
  • Salida.txt

    Este archivo contiene una lista de todos los buzones de usuario que se han extraído junto con información de zona horaria.
  • TimeZoneExtraction.log

    Este registro contiene la salida combinada de la zona horaria proceso de extracción para todos los servidores.
  • ResourceUpdate.log

    Este registro contiene el resultado del proceso de actualización de las salas de reuniones y para los buzones de recursos.
  • UserUpdate.log

    Este registro contiene la salida combinada del usuario proceso de actualización de buzones para todos los servidores.
  • CalendarScan.log

    Este registro contiene la salida combinada del calendario analizar el proceso para todos los servidores.
  • ConflictUsers.txt

    Este registro contiene una lista de usuarios que tienen en conflicto zonas horarias. Por ejemplo, propiedades de buzones de los usuarios indican que se pertenecer a varias zonas horarias.
  • NonExistent.txt

    Este registro contiene una lista de los usuarios que no tengan ninguna zona horaria información.

Subdirectorios

La herramienta de Exchange crea los siguientes subdirectorios en el directorio de instalación:
  • Recurso

    Éste es el subdirectorio de trabajo para el proceso de actualización para las salas de reuniones y para los buzones de recursos. Este directorio contiene los siguientes archivos:
    • MSEXTMZ.log

      Éste es el archivo de salida de la herramienta de Exchange para el proceso de actualización.
    • Errors.txt

      Este archivo contiene la lista de buzones.
    • Processed.txt

      Este archivo contiene la lista de buzones que estaban actualizado correctamente.
    Nota Todos los subdirectorios de trabajo contienen estos archivos.

    El Subdirectorio de recurso también contiene el subdirectorio siguiente:
    • Archivos de registro

      Este subdirectorio contiene registros de la actualización para cada buzón que se actualizó correctamente. Cada registro de actualización debe contener una lista de reuniones que se han actualizado.
  • NombreDeServidor

    Hay un subdirectorio para cada servidor en el que se realizó el proceso de extracción de zona horaria o una actualización del calendario. Estos subdirectorios contienen los siguientes subdirectorios:
    • CalendarScan

      Éste es el subdirectorio de trabajo para el análisis de calendario proceso.
    • Extraer

      Éste es el subdirectorio de trabajo para la zona horaria proceso de extracción.
    • Actualización

      Éste es el subdirectorio de trabajo para el buzón del usuario proceso de actualización. Contiene el subdirectorio siguiente:
      • Archivos de registro

        Este subdirectorio contiene registros de la actualización para cada buzón que se actualizó correctamente. Cada registro de actualización debe contener una lista de reuniones que se han actualizado.

Qué hacer después de ejecutar la herramienta de Exchange

Después de terminar de ejecutar la herramienta de Exchange en Exchange todos los los servidores en su entorno, se aplican las actualizaciones adecuadas de horario de verano de Exchange Server. La siguiente lista está organizada por la versión de Exchange Server y service pack nivel. Instalar las actualizaciones para su versión de Exchange Server en orden.

Exchange Server 2007
940006 Descripción del paquete acumulativo de actualizaciones 4 para Exchange Server 2007
Incluye el paquete acumulativo de actualizaciones 4 para Exchange Server 2007 las siguientes revisiones de horario de verano:
  • 937656 Experimenta problemas en Outlook Web Access para Exchange 2007 después de horario de verano (DST) comienza en Nueva Zelanda en 2007
  • 932561 Las citas que se envían desde una organización de Exchange a otro mediante el uso de Exchange 2007 pueden ser incorrectas en una hora, si una organización se encuentra en la zona horaria de Australia occidental
Exchange Server 2003 SP2
926666 Actualizar los cambios de horario de verano en 2007 para Exchange 2003 Service Pack 2 de
931915 Actualización de los cambios de horario de verano de Terranova en 2007 para Exchange Server 2003 Service Pack 2
929895 Las citas que se envían entre las distintas organizaciones de Exchange Server pueden ser incorrectas en una hora cuando una de las organizaciones es en la zona horaria de Australia occidental
937653 Experimenta uno o más problemas en Exchange Server 2003 tras el período de horario de verano para los cambios de Nueva Zelanda en 2007
Exchange Server 2003 SP1
940123 Experimenta problemas en Exchange 2003 Service Pack 1 después del horario de verano (DST) comienza en Nueva Zelanda en 2007

Problemas conocidos

  • La herramienta de Exchange no actualiza las reuniones periódicas que se crean en Outlook Web Access

    Si instala las actualizaciones de Exchange Server en el Exchange server antes de actualizar los buzones, reuniones que son periódicas creado en Outlook Web Access no se actualizan por la herramienta de Exchange.

    Para resolver este problema, quite las actualizaciones de Exchange Server, ejecute el Herramienta de Exchange y, a continuación, vuelva a instalar las actualizaciones de Exchange Server en el intercambio servidor.
  • Exchange 2007 debe reiniciarse después de ejecutar la herramienta de Exchange

    Para mostrar correctamente los elementos de calendario, debe reiniciar los servicios de Exchange después de ejecutar la herramienta de Exchange para Outlook Web Access en Exchange 2007.
  • No puede instalar la herramienta de Exchange

    La herramienta de Exchange no se instala correctamente si existe alguna de las siguientes claves del registro:
    • HKEY_CLASS_ROOT\Outlook.Application.9
    • HKEY_CLASS_ROOT\Outlook.Application.10
    En este escenario, recibirá el siguiente mensaje de error al intentar instalar la herramienta de Exchange:
    Exchange Server No se puede instalar la herramienta de modificación de la base de calendario con esta versión de Microsoft Outlook.
    Para evitar este problema, elimine estas claves del registro, instalar la herramienta de Exchange y, a continuación, restaurar el registro claves.

    Importante: Esta sección, el método o la tarea contiene pasos que le indicará cómo en modificar el registro. Sin embargo, pueden producirse problemas graves si modifica el registro de forma incorrecta. Por lo tanto, asegúrese de que siga estos pasos con cuidado. Para una mayor protección, copia de seguridad del registro antes de modificarlo. Luego puede restaurar el registro si surge algún problema. Para obtener más información acerca de cómo hacer copia de seguridad y restaurar el registro, haga clic en el siguiente artículo número para ver el artículo en Microsoft Knowledge Base:
    322756 Cómo hacer copia de seguridad y restaurar el registro en Windows
  • Hay un límite en el número de buzones que pueden procesarse por servidor

    En el modo de lista de usuarios y en el modo de extracción de zona horaria, MSEXTMZ.exe puede procesar sólo 65.535 buzones en un servidor. Si el servidor tiene no se procesan más de 65.535 buzones, algunos buzones.
  • No se actualizan los calendarios de carpetas públicas

    La herramienta de Exchange no actualiza la carpeta pública calendarios. Para obtener información acerca de cómo actualizar un calendario de carpetas públicas, consulte la documentación de la herramienta de Outlook.
  • Puede ejecutar la herramienta de Outlook y la herramienta de Exchange en el mismo entorno

    Si ejecuta la herramienta de Exchange en un buzón que tenga ya han sido no actualizados por la herramienta de Outlook, o viceversa, puede que experimente ningún lado efectos. Sin embargo, si ejecuta la herramienta de Exchange, no es necesario para que los usuarios Ejecute la herramienta de Outlook por separado.
  • Los avisos de la reunión no aparecen después de lo esperado

    Avisos de la reunión no son para los buzones actualizados por la herramienta de Exchange no se actualizan si Outlook nunca se ha conectado al buzón de correo en el modo en línea. En esta situación, los avisos aparecen una hora posterior a se esperaba.

    Si Outlook nunca se ha conectado en modo con conexión, debe ajustar los avisos incorrectos para las citas del calendario que la herramienta de Outlook busca. Además, no existe la carpeta de búsqueda de avisos en el buzón. Por lo tanto, la herramienta no actualiza los elementos de correo electrónico, contactos u otros avisos.

    Por ejemplo, la herramienta no actualiza el aviso en un elemento de correo electrónico para realizar un seguimiento en un momento en el futuro. La herramienta no actualiza también el aviso en un elemento de tarea que tiene un aviso.
  • Recibirá un mensaje de error: "no se puede instalar porque se detectaron versiones anteriores de 'Herramienta de actualizar calendario de Microsoft Exchange'. Desinstálela y vuelva a ejecutar este programa de instalación"

    Si instaló previamente la actualización del calendario de Exchange Versión 1.0 de herramienta, debe desinstalar esta versión antes de instalar Exchange Versión de la herramienta de actualización de calendario 2.0.

    Herramienta de actualización del calendario de Exchange versión 1.0 se distribuyó como un archivo ejecutable autoextraíble que contenía dos paquetes .msi (Msextmz.msi y Msextmzcfg.msi). Debe desinstalar ambos paquetes antes de instalar la versión 2.0 de la herramienta de Exchange.

    Si usted sigue experimentando problemas al instalar la versión 2.0 de la herramienta de Exchange Intente volver a instalar y desinstalar la versión 1.0 de la herramienta de Exchange. DO Este problema si utiliza los paquetes .msi en lugar de mediante el uso de la Agregar o quitar Programas característica en el Panel de Control. A continuación, reinicie el equipo, y a continuación, instale la versión 2.0 de la herramienta de Exchange.

    Si este procedimiento no se no funciona, extraer los archivos binarios directamente desde los paquetes MSI.
  • Al ejecutar las herramientas de actualización de Outlook o Exchange, las citas están desfasadas una hora en los buzones donde la zona horaria es hora estándar de Nueva Zelanda

    Este comportamiento se produce cuando los escenarios siguientes son True:
    • Ejecutar las herramientas de actualización de Outlook o Exchange en un equipo que ejecuta Windows Vista.
    • La zona horaria de los buzones que están siendo actualizado es hora estándar de Nueva Zelanda.
    Para evitar este problema, debe ejecutar el Outlook o Herramientas de actualización de Exchange frente a los buzones de una segunda vez en o después de enero 1, 2008.

    Este comportamiento se produce porque Windows Vista administra la zona horaria Siga la información de forma diferente que en otras versiones de Windows. Si no ejecuta el Outlook o Exchange actualizar herramientas de nuevo en o después del 1 de enero de 2008, todos los las citas del segundo evento DST estarán fuera de una hora. El horario de verano de segundo evento incluye las fechas desde el 16 de marzo de 2008 hasta el 6 de abril de 2008.

    Si no lo hace desea esperar hasta el 1 de enero de 2008 para actualizar las citas en el horario de verano de segundo evento, puede ejecutar las herramientas de actualización de Outlook o Exchange desde un equipo que es ejecuta Windows XP o Windows Server 2003.
  • Se cambia una fecha que se encuentra en el formato DD/MM/AAAA en el formato DD/M/AAAA

    Establece la Fecha de revisión del sistema operativo opción en el intercambio Herramienta de actualización del calendario. Al hacer esto, la herramienta de actualización del calendario de Exchange no funciona correctamente. Este problema se produce porque se cambia el formato de fecha MM/DD/AAAA a DD/M/AAAA.

    Además, un mensaje de error similar a la mensaje de error siguiente se registra en el registro de errores:
    [28/02/2008 7:10:21 AM] [776]: wmain: no se pudo leer la configuración: error 0 x 80070057.
    Este problema se produce debido a un valor de opción incorrecta en la siguiente sección de los buzones de ejemplo.servidorarchivo. 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 
    
    Observe que la línea "SystemPatchDate" contiene la fecha "2/28/08". Esta fecha debe estar en el formato MM/DD/AAAA.

    Para evitar este problema, no utilice el Revisión del sistema operativo Fecha opción.

Referencias

La secuencia de comandos "Conceder permiso de buzón"

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

Propiedades

Id. de artículo: 941018 - Última revisión: domingo, 10 de marzo de 2013 - Versión: 3.0
La información de este artículo se refiere a:
  • 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
Palabras clave: 
kbhowto kbinfo kbmt KB941018 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 941018

Enviar comentarios

 

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