Академия Специальных Курсов по Компьютерным Технологиям
    Главная страница Послать письмо
 
AskIt.ru  
   
   
   
   
   
   
 
 
  Главная / Заказные курсы / Программирование в Exchange Server
 
 

Получить учебные материалы по этому курсу


<-- Назад Читать дальше -->

Лабораторная работа 2.2

Настройка параметров почтовых ящиков для пользователей домена

Программное управление почтовыми ящиками Exchange Server, настройка ограничений на размер почтовых ящиков средствами ADSI, свойства mDBStorageQuota, mDBOverQuotaLimit, mDBOverHardQuotaLimit

Задание:

Создайте в том же стандартном модуле процедуру MailboxLimits(). Эта процедура должна вводить ограничения на размер почтовых ящиков всех пользователей, кроме тех, которые входят в группу "Администраторы домена". При этом должны настраиваться следующие ограничения:

  • генерироваться предупреждение (Issue warning, свойство mDBStorageQuota для объекта пользователя в Active Directory) должно при достижении почтовым ящика размера в 40 Мбайт;
  • запрет на отправку сообщений (Prohibit send, свойство mDBOverQuotaLimit для объекта пользователя в Active Directory) должен начинаться при достижении почтовым ящиком размера в 50 Мбайт;
  • запрет на отправку и получение сообщений (Prohibit send and Receive, свойство mDBOverHardQuotaLimit для объекта пользователя в Active Directory) должен начинаться при достижении почтовым ящиком размера в 60 Мбайт.

Решение:

Код процедуры MailboxLimits() может быть таким (необходимо добавить в проект ссылку на библиотеку Active DS Type Library):

Public Sub MailboxLimits()

Dim con As New ADODB.Connection

Dim rs As New ADODB.Recordset

Dim com As New ADODB.Command

Dim bDomAdminsFlag As Boolean

con.Provider = "ADsDSOObject"

con.Properties("ADSI Flag") = 1

con.Open "Active Directory Provider"

Set com.ActiveConnection = con

com.CommandText = "<LDAP://DC=nwtraders1,DC=msft>;" & _

"(&(objectClass=user)(mailNickName=*));displayName, AdsPath, mailNickname;subTree"

Set rs = com.Execute

Do While rs.EOF = False

    Set oUser = GetObject(rs.Fields("adsPath").Value)

    bDomAdminsFlag = True

    For Each oGroup In oUser.Groups

        Debug.Print oGroup.Name

        If oGroup.Name = "CN=Администраторы домена" Then bDomAdminsFlag = False

    Next

    If bDomAdminsFlag = True Then

        Debug.Print oUser.Name

        oUser.Put "mDBStorageQuota", CLng(40) * 1024

        oUser.Put "mDBOverQuotaLimit", CLng(50) * 1024

        oUser.Put "mDBOverHardQuotaLimit", CLng(60) * 1024

        oUser.Put "mDBUseDefaults", False

        oUser.SetInfo

    End If

    rs.MoveNext

Loop

 

   
   
   
   
   
   
   
   
   
   
 
<-- Назад Читать дальше -->

Получить учебные материалы по этому курсу


 
© 2004-2008, Академия Специальных Курсов
по Информационным Технологиям
.
Все права защищены.

Разработка NevaStudio
г. Санкт-Петербург, Васильевский остров,
20-я линия, д. 7
Офис 101, 2-й этаж
Телефон: 8(812)922-47-60
E-mail: info@askit.ru