Bagaimana alamat daylight saving time dengan menggunakan Exchange alat Update kalender

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 941018 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Pada Halaman ini

PENDAHULUAN

Daylight saving time adalah sebuah sistem untuk mengatur jam ke depan sehingga bahwa matahari terbit dan terbenam terjadi pada jam kemudian. Efek adalah siang hari lebih banyak di malam hari. Banyak negara menggunakan waktu musim panas. Sebagian besar negara-negara memiliki aturan dan peraturan untuk ketika waktu musim panas dimulai dan berakhir.

Tanggal waktu musim panas (DST) dapat berubah dari tahun ke tahun. Microsoft Outlook pengguna harus memperbarui mereka Outlook kalender setiap kali perubahan peraturan DST. Tanggal antara sebelumnya DST peraturan dan aturan DST saat ini dirujuk dalam artikel ini sebagai "jangka DST."

Artikel ini menjelaskan tindakan yang Anda dapat mengambil untuk item kalender alamat di Outlook yang terjadi selama diperpanjang DST periode. Artikel ini juga menjelaskan tindakan yang harus Anda ambil untuk memperbarui item kalender yang disimpan di Microsoft Exchange Server menurut aturan baru DST. Solusi yang disajikan dalam artikel ini melibatkan Microsoft Exchange kalender Update Tool ("Exchange alat").

Untuk informasi lebih lanjut tentang bagaimana mempersiapkan untuk perubahan dalam waktu musim panas di 2007 (DST 2007) untuk semua terpengaruh produk Microsoft, kunjungi berikut Microsoft Web site:
http://support.Microsoft.com/GP/cp_dst
Pada tahun 2011, pemerintah Rusia mengadopsi undang-undang untuk membatalkan Daylight Saving Time (DST). Untuk informasi lebih lanjut, kunjungi Web site Microsoft berikut:
http://support.Microsoft.com/GP/cp_dst#tab0
Untuk informasi lebih lanjut dalam bahasa Rusia, kunjungi Web site Microsoft berikut:
http://support.Microsoft.com/GP/cp_dst/ru#tab0

INFORMASI LEBIH LANJUT

Tentang alat Exchange

Setelah Anda menginstal pembaruan DST untuk Microsoft Windows, semua tua janji yang terjadi selama periode perubahan DST akan salah ditampilkan sebagai terjadi satu jam kemudian. Hal ini berlaku untuk kedua berulang dan satu contoh janji. Anda harus memperbarui janji ini begitu bahwa mereka akan ditampilkan dengan benar di Outlook, di Microsoft Office Outlook Web Access, dan dalam aplikasi yang didasarkan pada kolaborasi Data Objects (CDO).

Outlook menyediakan alat yang bernama Update Data zona waktu Alat untuk Microsoft Office Outlook ("Outlook alat"). Alat ini memungkinkan pengguna untuk memperbarui kalender mereka sendiri.

Untuk informasi lebih lanjut tentang zona waktu Data Update Alat, klik nomor artikel di bawah ini untuk melihat artikel di Microsoft Basis Pengetahuan:
931667Bagaimana untuk menangani perubahan waktu musim panas tahun 2007 dengan menggunakan zona waktu Data Update alat untuk Microsoft Office Outlook
Alat Update kalender Exchange ("pertukaran alat") membantu Anda menghindari kesulitan yang dihadapi administrator menggelar alat Outlook secara luas untuk semua pengguna dan dalam memastikan bahwa setiap pengguna berjalan Outlook alat dengan benar.

Deskripsi tingkat tinggi perangkat Exchange

Exchange alat terdiri dari dua file executable yang terpisah. Ini file dijelaskan di tabel berikut.
Perkecil tabel iniPerbesar tabel ini
Nama fileDeskripsi
Msextmz.exe Ini file eksekusi mengekstrak zona waktu informasi dari kotak surat pada server yang menjalankan Exchange Server. Ini file eksekusi juga update kotak pesan kalender untuk daftar tertentu pengguna.
Msextmzcfg.exe File ini dapat dijalankan alat konfigurasi yang melakukan sebagian besar langkah-langkah yang terlibat dalam memperbarui server Exchange Server.

Tentang versi baru dari perangkat Exchange

Berdasarkan umpan balik pelanggan, versi baru dari perangkat Exchange adalah dirilis pada 13 Agustus 2007. Artikel ini merujuk pada versi baru Exchange alat. Jika Anda menjalankan versi dari perangkat Exchange, uninstall itu, dan kemudian instal versi baru.

Versi baru Exchange alat mencakup perbaikan:
  • Zona waktu ekstraksi dan proses update kalender mempercepat terdapat.
  • User interface untuk alat konfigurasi lebih efisien dan intuitif.
  • Kemampuan untuk memperbarui ruang konferensi dan sumber daya kotak pesan sekarang dibangun ke dalam alat konfigurasi.
  • Kemampuan untuk memperbarui kotak pesan pengguna sekarang dibangun ke dalam alat konfigurasi.
  • Dokumen pemecahan masalah sekarang disertakan dengan Exchange alat, dan diintegrasikan ke dalam alat konfigurasi.
  • Zona waktu ekstraksi algoritma dan penanganan kesalahan kemampuan ditingkatkan.
  • Proses penebangan lebih user-friendly.

Risiko menjalankan Exchange alat

Ketika Anda menjalankan Exchange alat, ada risiko yang satu contoh janji tidak mungkin diperbarui dengan benar. Sebagai contoh, satu contoh janji yang dibuat setelah sistem operasi pengguna Diperbarui Mei diperbarui salah.

Untuk mengurangi risiko ini, gunakan salah satu dari metode berikut:
  • Mengurangi interval antara waktu yang Anda memperbarui komputer klien dan waktu yang Anda memperbarui kalender kotak pesan.
  • Jika komputer dalam organisasi diperbarui lama lalu, gunakan Hanya memperbarui pertemuan berulang pengaturan diPengaturan lanjutan.

    Biasanya, orang tidak membuat satu contoh janji berbulan-bulan di muka. Oleh karena itu, jika DST pembaruan telah diinstal berbulan-bulan sebelum, kebanyakan dari pertemuan tunggal-contoh itu jatuh ke dalam jangka DST ini akan dibuat dengan menggunakan yang baru DST transisi aturan. Pertemuan ini tidak harus diperbarui.
  • Jika Anda tahu persis tanggal ketika semua komputer klien yang diperbarui, menggunakan Sistem operasi Patch tanggal pengaturan diPengaturan lanjutan. Jika tanggal yang ditentukan, satu contoh janji yang dibuat setelah tanggal tersebut tidak diperbarui oleh Bursa alat.
Catatan Jika Anda menjalankan Outlook alat atau perangkat Exchange pada klien komputer yang menjalankan Windows Vista, dan Anda menjalankan alat terhadap kotak pesan di mana rumah zona waktu adalah waktu standar Selandia baru, Anda harus menjalankan alat kedua kalinya pada atau setelah tanggal 1 Januari 2008. Untuk selengkapnya, lihat "dikenal masalah"bagian.

Pilihan untuk memperbarui kotak pesan

Tabel berikut mencantumkan lima pilihan yang dapat Anda gunakan untuk memperbarui pengguna kotak pesan menggunakan DST 2007 zona waktu aturan.
Perkecil tabel iniPerbesar tabel ini
PilihanProKontra
Mendistribusikan alat Outlook untuk setiap pengguna, dan kemudian mengajar pengguna untuk memperbarui kotak pesan mereka sendiri. Pilihan ini untuk menghindari risiko yang terkait dengan menjalankan Exchange alat. Sulit untuk menjamin bahwa semua pengguna akan menjalankan alat Outlook dengan benar dan tepat waktu cara.

Pengguna yang tidak memiliki Outlook akan mampu menjalankan Outlook alat.

Anda harus membuat upaya pendidikan tambahan untuk mengurangi kebingungan bagi pengguna.
Menjalankan Exchange alat terhadap semua mempengaruhi pengguna dan server. Opsi ini menyediakan pengalaman yang efisien bagi pengguna. Ada risiko yang terkait dengan menjalankan Exchange alat, sebagai dijelaskan di bagian "Risiko menjalankan alat Exchange".
Menjalankan Exchange alat Update hanya janji yang berulang. Biarkan pengguna memperbarui satu contoh janji di kotak pesan mereka sendiri dengan menggunakan alat Outlook. Ada risiko kurang dari satu contoh janji salah diperbarui. Yang kontra menjalankan alat Outlook dikombinasikan dengan kontra menjalankan Exchange alat.
Menjalankan Exchange alat maupun alat Outlook. Meminta pengguna untuk memeriksa kalender mereka dan untuk re-book janji yang diperlukan. Ini pilihan untuk menghindari risiko yang terkait dengan menjalankan Exchange alat. Kecuali semua pengguna re-book semua terpengaruh janji, beberapa kalender item akan menjadi salah satu jam dari selama jangka DST.

Anda harus membuat upaya pendidikan tambahan untuk mengurangi kebingungan bagi pengguna.
Mendistribusikan alat Outlook untuk setiap pengguna, dan kemudian mengajar pengguna untuk memperbarui kotak pesan mereka sendiri. Kemudian, gunakan mode ekstraksi zona waktu Exchange alat untuk menentukan apakah pengguna yang menjalankan Outlook alat.

Jika pengguna tidak menjalankan alat Outlook, administrator dapat menjalankan Exchange alat.
Opsi ini mengurangi risiko pengguna tidak menjalankan alat yang tepat, dan menghindari risiko yang terkait dengan menjalankan Exchange alat. Ini bukanlah pilihan jika pengguna menjalankan Microsoft Office Outlook 2007.

Cara menginstal Exchange alat

Exchange alat Update kalender tersedia untuk di-download di bentuk file eksekusi alat (Msextmz.exe). Tool ini untuk di-download dari Pusat Download Microsoft:

Perkecil gambar iniPerbesar gambar ini
Men-download
Men-download paket Exchange alat Update kalender sekarang.

Mesin virtual diciptakan untuk membantu Anda menginstal dan menggunakan perangkat Exchange. Mesin virtual didasarkan pada Microsoft Windows Server 2003, Outlook 2007, Microsoft Office Excel 2007 dan Microsoft Office Word 2007. Mesin virtual yang bekerja di kedua Microsoft Virtual PC 2004 dan dalam Microsoft Virtual Server 2005 R2.

Untuk informasi lebih lanjut tentang mesin virtual untuk Exchange alat Update kalender, klik sejumlah artikel berikut untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
933185Mesin virtual tersedia untuk membantu Anda menggunakan waktu musim panas 2007 kalender pembaruan dalam organisasi Exchange
Untuk informasi lebih lanjut tentang cara men-download dukungan Microsoft file, klik nomor artikel di bawah ini untuk melihat artikel di Microsoft Basis Pengetahuan:
119591 Cara mendapatkan berkas dukungan Microsoft dari layanan daring
Microsoft telah memindai berkas ini dari virus. Microsoft digunakan paling lunak pendeteksi virus terbaru yang tersedia pada tanggal yang file telah diposting. Berkas tersebut disimpan pada server aman yang membantu mencegah setiap perubahan tidak sah terhadap berkas.

Bahasa yang didukung oleh perangkat Exchange

Exchange alat ini tersedia hanya dalam bahasa Inggris. Alat akan berjalan hanya pada komputer Inggris Amerika (AS).

Versi Exchange Server yang kompatibel dengan Exchange alat

Alat Exchange dapat memperbarui kotak pesan pada versi berikut Exchange Server:
  • Microsoft Exchange Server 2007 Enterprise Edition
  • Microsoft Exchange Server 2007 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange Server 2003 edisi standar
  • Microsoft Exchange 2000 Server Enterprise Edition
  • Microsoft Exchange 2000 Server standar Edition

Sistem operasi yang didukung oleh perangkat Exchange

Exchange alat akan berjalan pada versi 32-bit berikut sistem operasi:
  • Microsoft Windows Server 2003
  • Microsoft Windows XP
  • Windows Vista

Apa yang harus dilakukan sebelum Anda menjalankan alat Exchange

Menginstal pembaruan

Sebelum Anda menjalankan Exchange alat, pastikan bahwa klien dan server komputer diperbarui dengan benar. Untuk melakukannya, instal pembaruan Windows DST pada klien dan server. Untuk lebih informasi, klik nomor artikel di bawah ini untuk melihat artikel di Basis Pengetahuan Microsoft:
942763Update kumulatif zona waktu Desember 2007 untuk sistem operasi Microsoft Windows

Jika Anda menjalankan Microsoft Exchange Server 2003 Paket Layanan 2 (SP2), instal salah satu atau kedua dari pembaruan berikut, sebagai tepat untuk organisasi Anda:
  • Memperbarui 911829
  • Memperbarui 924334
Untuk informasi lebih lanjut tentang pembaruan ini, klik nomor artikel berikut untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
911829Anda menerima pesan galat ketika Anda mencoba untuk melakukan tugas-tugas ada mengedit, atau Anda harus meng-klik untuk mengaktifkan compose bingkai dalam Outlook Web Access
924334 Formulir menulis pesan berhenti merespons setelah Anda menginstal Internet Explorer 7.0 dan S/MIME kontrol pada klien Outlook Web Access pada Exchange Server 2003
Jika pengguna berada di dalam Yerusalem, tengah Brasil, atau Amerika Selatan E. zona waktu, baca pedoman dalam artikel Basis Pengetahuan Microsoft berikut:

943390 Mengganti beberapa item kalender Outlook adalah basisnya salah ketika Anda menggunakan alat Update Data Outlook zona waktu untuk menyesuaikan waktu musim panas perubahan dalam zona waktu tertentu

Verifikasi persyaratan sistem

Anda harus menjalankan Exchange alat hanya pada komputer yang kondisi berikut ini benar:
  • Komputer memiliki paket layanan Microsoft Office Outlook 2003 2 (SP2) atau Microsoft Office Outlook 2007 terinstal.
  • Komputer memiliki perangkat Data Outlook zona waktu diinstal.
  • Microsoft.NET Framework versi 2.0 diinstal pada komputer klien.
Anda tidak dapat menjalankan alat Exchange pada komputer yang menjalankan Exchange Server atau alat tukar sistem manajemen. Jika Anda mencoba untuk menginstal alat Exchange pada komputer yang menjalankan Exchange Server atau pertukaran Alat manajemen sistem, Anda menerima pesan galat berikut:
Microsoft Exchange alat Update kalender tidak diinstal dengan Microsoft Exchange.

Verifikasi izin dan persyaratan pengguna lainnya

Pastikan bahwa kondisi berikut ini benar:
  • Mengelola penyimpanan informasi hak akses pada setiap pertukaran Server pesan database (MDB) diperbarui.
  • Kirim sebagai izin untuk semua kotak pesan yang Diperbarui.
  • Izin akses kotak surat penuh untuk semua kotak pesan yang Diperbarui.
  • Izin administrator lokal diberikan pada komputer yang menjalankan Exchange alat.

Tentang script "Grant kotak surat izin"

Anda dapat menggunakan sampel GrantMailboxPermission.vbs script untuk memberikan domain pengguna akses kotak surat penuh dan kirim sebagai izin untuk semua kotak pesan.

Script ini dapat dijalankan hanya dengan Exchange Server Administrator pada komputer yang menjalankan Exchange 2000 Server atau Exchange Server 2003. Script ini tidak dapat berjalan di komputer yang menjalankan Exchange Server 2007. Namun, Anda dapat menggunakan Exchange Management Shell untuk memberikan izin yang diperlukan.

Kode untuk .vbs script disediakan dalam Bagian "Referensi". Tabel berikut menggambarkan dua mode di mana ini script berjalan.
Perkecil tabel iniPerbesar tabel ini
ModusPerintahDeskripsi
Tambahkan CScript GrantMailboxPermission.vbs ?add Domain_Name \ User_Name Berkas_name Perintah ini hibah Domain_Name \ User_Name pengguna akses kotak surat penuh dan kirim sebagai izin untuk kotak pesan pengguna yang terdaftar pada input file.

Input file harus file teks yang berisi warisan nama domain dari kotak pesan pengguna. Nama-nama ini harus dibatasi oleh kereta Kembali + Line Feed (CRLF).

Script menghasilkan GrantMailboxPermission.log file. File ini adalah catatan kotak pesan yang yang diproses. Baris pertama dari log file Domain_Name \ User_Name pengguna yang diberikan akses. Jangan menghapus file ini. File ini digunakan dalam modus Hapus.

Jika eksplisit "menyangkal" akses ditetapkan untuk pengguna, script log informasi dalam file yang bernama "GrantMailboxPermission.err." The skrip tidak akan memberikan atau mengubah izin.

Jika pengguna adalah bagian grup keamanan yang telah ditetapkan "menolak" akses, script hibah Penuh izin akses kotak surat dan kirim sebagai. Namun, pengguna tidak akan dapat untuk masuk ke kotak pesan. Semua kesalahan akan masuk GrantMailboxPermission.err file.
Hapus CScript GrantMailboxPermission.vbs ?removePerintah ini mengapus akses kotak surat penuh dan kirim sebagai izin untuk kotak pesan yang tercantum dalam GrantMailboxPermission.log file dari Domain_Name \ User_Name pengguna. The Domain_Name \ User_Name pengguna ditetapkan dalam GrantMailboxPermission.log file.
Catatan
  • Ketika Anda menjalankan script ini pada komputer yang menjalankan Exchange Server, script kembali karakter periode (.) ketika script berhasil proses pengguna. Script kembali tanda seru karakter (!) ketika script tidak berhasil proses pengguna.
  • File output mode ekstraksi zona waktu tidak dapat digunakan sebagai file input untuk script ini. Untuk membuat input file untuk ini script, paste isi file output mode ekstraksi zona waktu ke Notepad, menyimpan isi sebagai dokumen baru, dan kemudian menggunakan dokumen baru sebagai input file.

Cara menggunakan alat Exchange

Menggunakan alat Exchange, mulai Update kalender Exchange Alat konfigurasi (Msextmzcfg.exe). Program ini akan membantu Anda dengan seluruh proses memperbarui kalender.

Menjalankan proses ekstraksi zona waktu

Untuk memperbarui kalender kotak pesan, Anda harus menentukan zona waktu kalender. Proses ekstraksi zona waktu mempelajari sifat dan janji kalender kotak pesan untuk menentukan zona waktu mereka. Untuk menjalankan waktu proses ekstraksi zona, ikuti langkah berikut:
  1. Pada halaman Selamat datang, klik Berikutnya.

    Catatan Halaman Selamat datang memperkenalkan Anda ke alat konfigurasi dan membahas izin yang diperlukan untuk menjalankan alat. Halaman juga menyediakan link ke artikel ini.
  2. Menentukan pengaturan untuk alat konfigurasi. Kami merekomendasikan bahwa Anda mengalokasikan setidaknya 200 megabyte (MB) ruang disk untuk log.

    Jika Anda ingin mengubah pengaturan default, klikPengaturan lanjutan. Untuk informasi lebih lanjut tentang maju pengaturan, lihat tabel yang mengikuti prosedur ini.
  3. Pilih Exchange Server dalam Active Directory lokal layanan direktori hutan yang ingin Anda perbarui. Kemudian, klikBerikutnya untuk memulai proses ekstraksi zona waktu.

    Catatan Jika Anda harus sudah dilakukan ekstraksi zona waktu, Anda dapat melewatkan langkah ini dengan mengklik Skip.

    Perhatikan bahwa status Bar, link ke output log, dan tampilan real-time zona waktu proses ekstraksi ditampilkan. Setelah zona waktu proses ekstraksi adalah lengkap, klik Berikutnya.

    Jika kesalahan yang muncul, link ke dokumen pemecahan masalah ditampilkan.
  4. Mengkonfigurasi Kotak pesan dengan tidak ada waktu Zona Halaman, dan kemudian klik Berikutnya untuk memindai kalender item.

    Catatan Apabila alat menemukan pengguna yang tidak memiliki tingkat properti kotak pesan yang menunjukkan zona waktu mereka, alat memindai sebenarnya pertemuan dan janji di dalam mereka kalender untuk menentukan zona waktu. Anda dapat menentukan nomor item kalender yang Anda ingin alat konfigurasi untuk memindai. The lebih besar jumlah item yang Anda tentukan, semakin lama pemindaian yang akan diperlukan.
  5. Dalam Menyelesaikan layar zona waktu tidak dikenal nama Halaman, alat akan meminta Anda untuk peta zona waktu itu alat tidak mengenali zona waktu sistem operasi yang dikenal. Setelah Anda melakukan ini, klikBerikutnya
  6. Jika alat konfigurasi menemukan pengguna yang memiliki beberapa zona waktu, Anda diminta untuk secara manual menyelesaikan konflik dengan menentukan salah satu zona waktu yang digunakan untuk memperbarui kalender pengguna. Setelah Anda melakukan ini, klikBerikutnya.
  7. Dalam Simpan kotak pesan DNs dengan waktu yang belum terselesaikan Zona Halaman, pengguna manapun tersisa yang masih memiliki zona waktu tidak informasi atau yang masih memiliki informasi zona waktu yang saling bertentangan tercatat dalam file log terpisah. Klik Berikutnya.
Zona waktu proses ekstraksi sudah lengkap. Daftar pengguna dan zona waktu diekstrak terletak di file output (Output.txt) di direktori instalasi.

Pengaturan lanjutan

Tabel berikut menjelaskan pengaturan lanjutan yang Anda dapat mengkonfigurasi dalam langkah 2 pada prosedur sebelumnya.
Perkecil tabel iniPerbesar tabel ini
PengaturanFungsionalitasSkenarioPertimbanganPenerapan
Memperbarui pertemuan berulangIni mengubah pengaturan Pembaruan hanya pertemuan berulang yang dipengaruhi oleh DST. Satu contoh janji yang jatuh di jangka DST tidak Diperbarui terlepas dari apakah mereka harus diperbarui.Jika komputer di organisasi diperbarui lama waktu yang lalu, menggunakan pengaturan ini.

Biasanya, orang tidak membuat janji tunggal-contoh banyak bulan di muka. Oleh karena itu, jika pembaruan DST dipasang berbulan-bulan sebelum, kebanyakan dari pertemuan tunggal-contoh yang jatuh ke dalam DST diperpanjang periode akan dibuat dengan menggunakan aturan-aturan transisi DST baru. Ini pertemuan tidak harus diperbarui.
Jika pengguna membuat satu contoh pertemuan berbulan-bulan di muka, pertemuan ini tidak diperbarui jika pengaturan ini ditentukan.Pengaturan ini berlaku untuk semua kotak pesan, untuk semua konferensi kamar, dan untuk semua pengguna kalender.
Instalasi Patch sistem operasi TanggalPengaturan ini menentukan satu-contoh janji yang dibuat atau diperbarui setelah tanggal yang Anda tentukan tidak Diperbarui.Jika Anda tahu tanggal yang tepat ketika semua komputer klien yang Diperbarui, menggunakan pengaturan ini.

Ketika Anda melakukan ini, pertemuan yang dibuat setelah pembaruan telah diinstal tidak diperbarui. Pertemuan ini jatuh di bawah aturan-aturan zona waktu yang baru.
Pengaturan ini sangat efektif hanya ketika komputer klien semua diperbarui dalam waktu kurang dari 24 jam, dan ketika ada tinggi penetrasi update. (Ada penetrasi tinggi ketika persentase komputer dalam organisasi yang telah diperbarui secara tinggi 90 persen jangkauan.)

Selain itu, administrator dapat menentukan hanya satu memperbarui tanggal. Pertemuan yang dibuat di zona waktu yang sesuai dengan khusus update dan untuk khusus menetapkan waktu zona harus diperbarui.

Implikasi untuk ruang konferensi adalah bahwa hanya diperbarui konferensi kamar yang di zona waktu tertentu.

Implikasi untuk pengguna kotak pesan adalah bahwa jika SuppressExchange pengaturan atau SuppressAll pengaturan tidak ditentukan, hanya kotak pesan pengguna yang termasuk waktu tertentu zona diperbarui.
Pengaturan ini berlaku untuk semua kotak pesan, untuk semua ruang konferensi, dan untuk semua pengguna kalender.
SuppressExchange dan MaxDepthPengaturan ini menyebabkan semua janji di Kalender pengguna yang terpengaruh oleh perubahan DST diperbarui terlepas dari Apakah pengguna adalah penyelenggara item kalender.

Jika pengguna adalah penyelenggara item kalender, pembaruan tidak dikirim ke peserta yang memiliki kotak pesan Exchange. Pembaruan akan dikirim ke peserta yang tidak memiliki Exchange kotak pesan.

The MaxDepth pengaturan menentukan tingkat Daftar distribusi ekspansi yang dilakukan untuk menentukan peserta yang memiliki kotak pesan Exchange dan peserta yang tidak.
Gunakan pengaturan ini jika Anda tidak ingin pengguna Exchange untuk menerima pembaruan pertemuan dari penyelenggara untuk pertemuan yang dipengaruhi oleh jangka DST.

The SuppressExchange pengaturan lebih baik daripada SuppressAll pengaturan jika organisasi memiliki non-Exchange Sistem kalender server dan jika pertemuan dijadwalkan untuk menyertakan peserta yang di luar organisasi.
Pembaruan pertemuan tidak dikirim, kecuali untuk pengguna non-pertukaran. Oleh karena itu, untuk membuat yakin bahwa salinan dari pertemuan yang sama Diperbarui untuk semua peserta mungkin, setiap kotak pesan di organisasi harus Diperbarui.

Kondisi ini dapat secara signifikan meningkatkan jumlah kotak pesan yang telah diperbarui. Oleh karena itu, waktu pengolahan mungkin meningkat.

Ketika besar, daftar bersarang distribusi adalah pada peserta Daftar, itu adalah proses yang mahal untuk menentukan peserta untuk pertemuan dan menentukan apakah peserta yang memiliki kotak pesan Exchange. Jika Anda menetapkan ini menetapkan dan menetapkan nilai tinggi untuk MaxDepth parameter, beban signifikan dapat meletakkan pada domain controller.
Pengaturan ini hanya berlaku untuk kotak pesan pengguna.
SuppressAllPengaturan ini menyebabkan semua janji di kalender pengguna yang terpengaruh oleh DST berubah menjadi Diperbarui terlepas dari apakah pengguna adalah penyelenggara kalender tersebut item.

Jika pengguna adalah penyelenggara item kalender, pembaruan adalah tidak dikirim ke peserta.
Gunakan pengaturan ini jika Anda tidak ingin peserta untuk menerima pembaruan pertemuan dari penyelenggara untuk pertemuan yang terpengaruh jangka DST.Pembaruan pertemuan tidak dikirim. Oleh karena itu, untuk membuat yakin bahwa salinan dari pertemuan yang sama diperbarui untuk semua peserta mungkin, setiap kotak pesan di organisasi harus diperbarui.

Kondisi ini dapat meningkatkan jumlah kotak pesan yang telah diperbarui. Oleh karena itu, waktu pengolahan dapat meningkat.

Peserta yang tidak memiliki kotak pesan Exchange Apakah tidak menerima pembaruan. Janji mereka tidak dapat Diperbarui, tergantung pada sistem e-mail yang mereka berjalan dan tergantung pada tindakan yang mereka administrator yang diperlukan.
Pengaturan ini berlaku hanya untuk pengguna kotak pesan.

Memperbarui ruang konferensi dan kotak pesan sumber

Anda harus memperbarui ruang konferensi dan kotak pesan sumber untuk menghindari Pemesanan konflik. Untuk melakukannya, ikuti langkah-langkah berikut:
  1. Pada Menentukan sumber daya dan ruang konferensi Kalender Halaman, ketik atau tempel daftar alias ruang konferensi dalam organisasi Anda. Klik Menyelesaikan untuk memvalidasi alias, kemudian klik Berikutnya.
  2. Pada Menyelesaikan zona waktu untuk sumber daya dan Konferensi kamar kalender Halaman, alat akan meminta Anda untuk secara manual menentukan zona waktu untuk ruang konferensi jika ruang konferensi tidak memiliki zona waktu. Melakukan hal ini, dan kemudian klik Berikutnya.
  3. Halaman pengingat ditampilkan untuk mengingatkan Anda bahwa alat ini akan memperbarui kalender. Klik Berikutnya.
  4. Pemberitahuan yang bar status, link ke output log, dan Real-Time tampilan output alat akan ditampilkan. KlikBerikutnya.

    Jika kesalahan dijumpai, link ke pemecahan masalah dokumen akan ditampilkan di bagian bawah halaman ini.

Update kalender kotak pesan pengguna

Untuk melakukannya, ikuti langkah-langkah berikut:
  1. Pada Pengaturan untuk memperbarui kotak pesan pengguna Kalender Halaman, mengkonfigurasi pengaturan untuk update.

    Jika Anda tidak ditentukan SuppressExchange atauSuppressAll pengaturan lanjutan, Pilih zona waktu yang dipengaruhi oleh DST. Jika tidak, pilih semua zona waktu.

    KlikBerikutnya.
  2. Halaman pengingat ditampilkan untuk mengingatkan Anda bahwa alat ini akan memperbarui kalender. Klik Berikutnya.
  3. Pemberitahuan yang bar status, link ke output log, dan Real-Time tampilan output alat akan ditampilkan. Setelah update lengkap, klik Berikutnya.

    Jika kesalahan dijumpai, link ke dokumen pemecahan masalah ditampilkan di bawah ini Halaman.
  4. Klik Menyelesaikan.

Bertukar file log alat dan subdirektori

File log

Exchange alat membuat berkas log berikut di direktori instalasi:
  • Output.txt

    File ini berisi daftar semua kotak pesan pengguna yang diambil bersama-sama dengan informasi zona waktu mereka.
  • TimeZoneExtraction.log

    Log ini berisi output gabungan dari zona waktu proses ekstraksi untuk semua server.
  • ResourceUpdate.log

    Log ini berisi output dari proses update untuk ruang konferensi dan untuk kotak pesan sumber.
  • UserUpdate.log

    Log ini berisi output gabungan dari pengguna proses update kotak pesan untuk semua server.
  • CalendarScan.log

    Log ini berisi output gabungan dari kalender memindai proses untuk semua server.
  • ConflictUsers.txt

    Log ini berisi daftar pengguna yang memiliki konflik zona waktu. Sebagai contoh, properti kotak pesan pengguna menunjukkan bahwa mereka termasuk beberapa zona waktu.
  • NonExistent.txt

    Log ini berisi daftar pengguna yang memiliki zona waktu tidak informasi.

Subdirektori

Exchange alat membuat subdirektori berikut di direktori instalasi:
  • Sumber daya

    Ini adalah subdirektori bekerja untuk proses update untuk ruang konferensi dan kotak pesan sumber. Direktori ini berisi file-file berikut:
    • Msextmz.log

      Ini adalah file output Exchange alat untuk memperbarui proses.
    • Errors.txt

      Berkas ini berisi daftar kotak pesan.
    • Processed.txt

      File ini berisi daftar kotak pesan yang berhasil diperbarui.
    Catatan Semua bekerja subdirektori berisi file-file ini.

    The Sumber daya subdirektori juga berisi subdirektori berikut:
    • LogFiles

      Subdirektori ini berisi pembaruan log untuk setiap kotak pesan yang sudah berhasil diperbarui. Setiap log pembaruan harus berisi daftar pertemuan yang diperbarui.
  • Server_Name

    Ada satu subdirektori untuk setiap server di mana proses ekstraksi zona waktu atau update kalender yang dilakukan. Subdirektori ini berisi subdirektori berikut:
    • CalendarScan

      Ini adalah subdirektori bekerja untuk pemindaian kalender proses.
    • Ekstrak

      Ini adalah subdirektori bekerja untuk zona waktu proses ekstraksi.
    • Pemutakhiran

      Ini adalah subdirektori bekerja untuk kotak pesan pengguna memperbarui proses. Ini berisi subdirektori berikut:
      • LogFiles

        Subdirektori ini berisi pembaruan log untuk setiap kotak pesan yang sudah berhasil diperbarui. Setiap log pembaruan harus berisi daftar pertemuan yang diperbarui.

Apa yang harus dilakukan setelah Anda menjalankan alat Exchange

Setelah Anda menyelesaikan menjalankan Exchange alat terhadap semua Exchange server di lingkungan Anda, menerapkan pembaruan Exchange Server DST yang sesuai. Daftar berikut ini disusun oleh Exchange Server versi dan layanan paket tingkat. Instal pembaruan untuk versi Exchange Server dalam urutan.

Exchange Server 2007
940006 Deskripsi Update Rollup 4 untuk Exchange Server 2007
Rollup pembaruan 4 untuk Exchange Server 2007 mencakup perbaikan DST berikut:
  • 937656 Anda mengalami masalah dalam Outlook Web Access untuk Exchange 2007 setelah waktu musim panas (DST) mulai di Selandia baru pada tahun 2007
  • 932561 Janji yang dikirim dari satu organisasi Exchange yang lain dengan menggunakan Exchange 2007 mungkin salah satu jam jika satu organisasi dalam zona waktu Australia Barat
Exchange Server 2003 SP2
926666 Pembaruan untuk daylight saving time perubahan pada 2007 untuk Exchange 2003 Paket Layanan 2
931915 Pembaruan untuk perubahan daylight saving time Newfoundland tahun 2007 untuk Exchange Server 2003 Paket Layanan 2
929895 Janji yang dikirim antara organisasi Exchange Server yang berbeda mungkin salah satu jam ketika salah satu organisasi berada dalam zona waktu Australia Barat
937653 Anda mengalami satu atau lebih masalah pada Exchange Server 2003 setelah periode waktu musim panas untuk Selandia Baru perubahan di 2007
Exchange Server 2003 SP1
940123 Anda mengalami masalah dalam Exchange 2003 Paket Layanan 1 setelah waktu musim panas (DST) mulai di Selandia baru pada tahun 2007

Masalah yang dikenal

  • Pertemuan berulang yang dibuat di Outlook Web Access tidak diperbarui oleh alat Exchange

    Jika Anda menginstal pembaruan Exchange Server pada Exchange server sebelum Anda memperbarui kotak, pertemuan yang berulang dibuat di Outlook Web Access tidak diperbarui oleh alat pertukaran.

    Untuk mengatasi masalah ini, Hapus Exchange Server Update, menjalankan Pertukaran alat, dan kemudian menginstal ulang pembaruan Exchange Server pertukaran server.
  • Exchange 2007 harus ulang setelah Anda menjalankan alat Exchange

    Untuk menampilkan item kalender dengan benar, Anda harus me-restart Jasa penukaran setelah Anda menjalankan alat Exchange Outlook Web Access di Exchange 2007.
  • Anda tidak dapat menginstal alat Exchange

    Alat Exchange tidak terinstal berhasil jika ada salah satu dari kunci registri berikut:
    • HKEY_CLASS_ROOT\Outlook.Application.9
    • HKEY_CLASS_ROOT\Outlook.Application.10
    Dalam skenario ini, Anda menerima pesan galat berikut Ketika Anda mencoba untuk menginstal Exchange alat:
    Exchange Server Kalender Rebasing alat tidak diinstal dengan versi Microsoft Outlook.
    Untuk mengatasi masalah ini, hapus kunci registri berikut, menginstal perangkat Exchange, dan kemudian mengembalikan registri kunci.

    Penting Bagian ini, metode, atau tugas yang memuat langkah-langkah yang memberitahu Anda bagaimana untuk mengubah registri. Namun, masalah serius mungkin muncul saat Anda memodifikasi registri secara tidak benar. Oleh karena itu, pastikan Anda mengikuti langkah-langkah hati-hati. Untuk perlindungan tambahan, buat cadangan registri sebelum Anda memodifikasi. Kemudian, Anda dapat memulihkan registri apabila terjadi masalah. Untuk informasi lebih lanjut tentang cara membuat cadangan dan memulihkan registri, klik artikel berikut nomor ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
    322756 Cara membuat cadangan dan memulihkan registri di Windows
  • Batasan jumlah kotak pesan yang dapat diproses per server

    Dalam modus daftar pengguna dan dalam mode ekstraksi zona waktu, Msextmz.exe dapat memproses hanya 65.535 kotak pesan di server. Jika server memiliki lebih dari 65.535 kotak pesan, beberapa kotak pesan tidak akan diproses.
  • Publik Folder kalender tidak diperbarui

    Exchange alat update Folder publik kalender. Untuk informasi tentang cara memperbarui kalender Folder publik, lihat dokumentasi untuk alat Outlook.
  • Anda dapat menjalankan alat Outlook dan alat Exchange dalam lingkungan yang sama

    Jika Anda menjalankan alat Exchange pada kotak pesan yang telah sudah diperbarui oleh alat Outlook, atau sebaliknya, Anda mengalami sisi tidak efek. Namun, jika Anda menjalankan Exchange alat, ada tidak perlu bagi pengguna untuk menjalankan alat Outlook secara terpisah.
  • Pengingat non muncul kemudian dari yang diharapkan

    Non-pengingat untuk kotak pesan yang diperbarui oleh alat Exchange tidak diperbarui jika Outlook tidak pernah tersambung ke kotak pesan dalam modus Online. Dalam situasi ini, pengingat muncul satu jam kemudian daripada diharapkan.

    Jika Outlook tidak pernah terhubung dalam modus Online, Anda harus menyesuaikan salah pengingat untuk janji kalender yang alat Outlook menemukan. Selain itu, folder pencarian pengingat tidak ada di kotak pesan. Oleh karena itu, alat tidak memperbarui item e-mail, kontak, atau lainnya pengingat.

    Sebagai contoh, alat tidak memperbarui pengingat pada e-mail item untuk menindaklanjuti pada suatu waktu di masa depan. Alat juga tidak memperbarui pengingat pada item tugas yang memiliki pengingat.
  • Anda menerima pesan galat: "tidak dapat menginstal karena versi sebelumnya dari 'Microsoft Exchange alat Update kalender' yang terdeteksi. Silakan uninstall mereka dan menjalankan pengaturan ini lagi"

    Jika Anda sebelumnya menginstal Update kalender Exchange Alat versi 1.0, Anda harus menghapus versi ini sebelum Anda menginstal Exchange Kalender alat Update versi 2.0.

    Exchange alat Update kalender Versi 1.0 didistribusikan sebagai alat file eksekusi yang berisi dua .msi paket (Msextmz.msi dan Msextmzcfg.msi). Anda harus menghapus keduanya paket sebelum Anda menginstal versi 2.0 perangkat Exchange.

    Jika Anda masih mengalami masalah ketika Anda menginstal versi 2.0 perangkat Exchange, mencoba menginstal ulang dan kemudian menghapus versi 1.0 perangkat Exchange. Melakukan ini dengan menggunakan paket .msi bukan dengan menggunakan Menambah atau menghapus Program fitur di Panel kontrol. Kemudian, restart komputer Anda, dan kemudian instal versi 2.0 perangkat Exchange.

    Jika prosedur ini tidak bekerja, ekstrak binari langsung dari paket .msi.
  • Ketika Anda menjalankan Outlook atau Exchange alat update, janji yang oleh satu jam pada kotak pesan di mana rumah zona waktu adalah waktu standar Selandia baru

    Perilaku ini terjadi ketika skenario berikut benar:
    • Anda menjalankan Outlook atau Exchange alat update pada komputer yang menjalankan Windows Vista.
    • Zona waktu rumah kotak pesan yang sedang Diperbarui adalah waktu standar Selandia baru.
    Untuk mengatasi masalah ini, Anda harus menjalankan Outlook atau Exchange alat update terhadap kotak kedua kalinya pada atau setelah Januari 1, 2008.

    Perilaku ini terjadi karena Windows Vista menangani zona waktu informasi berbeda daripada versi lain dari Windows Apakah. Jika Anda tidak menjalankan Outlook atau Exchange memperbarui alat lagi pada atau setelah tanggal 1 Januari 2008, semua janji dalam acara DST kedua akan oleh satu jam. DST kedua acara termasuk tanggal dari 16 Maret 2008 sampai April 6, 2008.

    Jika Anda tidak ingin menunggu sampai Januari 1, 2008 untuk memperbarui janji di DST kedua acara, Anda dapat menjalankan Outlook atau Exchange alat update dari komputer yang menjalankan Windows XP atau Windows Server 2003.
  • Tanggal yang adalah dalam MM/DD/YYYY format diubah menjadi format/M/tttt

    Anda menetapkan Sistem operasi Patch tanggal pilihan dalam pertukaran Alat Update kalender. Ketika Anda melakukan ini, Exchange alat Update kalender tidak berfungsi dengan benar. Masalah ini terjadi karena format tanggal MM/DD/YYYY berubah untuk M/tttt.

    Selain itu, pesan kesalahan yang menyerupai pesan galat berikut dicatat di dalam log kesalahan:
    [28/02/2008 7: 10: 21 AM] [776]: wmain: gagal membaca konfigurasi - kesalahan 0x80070057.
    Masalah ini terjadi karena salah pilihan pengaturan di bagian berikut contoh kotak pesan.Serverberkas .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 
    
    Perhatikan bahwa "SystemPatchDate" baris berisi tanggal "2/28/08." Tanggal ini harus dalam format DD/MM/YYYY.

    Untuk mengatasi masalah ini, tidak menggunakan Sistem operasi Patch Tanggal pilihan.

REFERENSI

Script "Grant kotak surat izin"

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

Properti

ID Artikel: 941018 - Kajian Terakhir: 19 Oktober 2011 - Revisi: 1.0
Berlaku bagi:
  • 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
Kata kunci: 
kbhowto kbinfo kbmt KB941018 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:941018

Berikan Masukan

 

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