This blog is dedicated to Ms Exchange 2007 , Active Directory , MSCS Services articles and demos , Its all about Microsoft Exchange 2007 .

16th
DEC

Exchange 2007 Mail Submission Service Fail to Start after SP2 Installation

Posted by under Exchange Management Console, Exchange Management Shell

Exchange 2007 Mail Submission Service Fail to Start after SP2 Installation

Cluster Type : Single Copy Cluster
Action : Installation of Exchange 2007 SP 2
Issue   : Mail Submission Service Fail to start
Error : Error 1053: The service did not respond to the start or control request in a timely fashion

Resolve

Increase the service timeout period

The Service Control Manager will generate an event if a service does not respond within the defined timeout period (the default timeout period is 30000 milliseconds). To resolve this problem, use the Registry Editor to change the default timeout value for all services.

To perform this procedure, you must have membership in Administrators, or you must have been delegated the appropriate authority.

Caution: Incorrectly editing the registry may severely damage your system. Before making changes to the registry, you should back up any valued data.

To change the service timeout period:

  1. Click the Start button, then click Run, type regedit, and click OK.
  2. In the Registry Editor, click the registry subkey HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control.
  3. In the details pane, locate the ServicesPipeTimeout entry, right-click that entry and then select Modify.Note: If the ServicesPipeTimeout entry does not exist, you must create it by selecting New on the Edit menu, followed by the DWORD Value, then typing ServicesPipeTimeout, and clicking Enter.
  4. Click Decimal, enter the new timeout value in milliseconds, and then click OK.
  5. Restart the computer.

2nd
NOV

How to Export Members of Distribution Group in Text File

Posted by Nausherwan under Exchange Management Shell

Open Exchange Management Shell

Write this command.

Get-DistributionGroupMember “DL Name”>D:\Filename.txt

20th
AUG

Send On Behalf Of Another User In Exchange 2007

Posted by Nausherwan under Exchange Management Console, Exchange Management Shell

If user A wants to send an email on the behalf of user B using his own mailbox. We have to grant permission on the mailbox of user B through Exchange Management Console.

Right click on the user mailbox and go to the properties

Click on the tab of “Mail Flow Settings” and than click on “Delivery Options”

Under the heading “Grant this permission to” click on Add button and add the user A

Click ok and close the mailbox properties.

To verify the send on behalf of permission on user account, use EMS and give the command

Get-Mailbox -Identity MailboxName | fl

Settings for Outlook 2007

Open outlook 2007 and compose a new message

Go to Options and select “Show From” field

Put that user in From field to whom you want to send on behalf of from your mailbox

10th
AUG

Send on Behalf of Distribution Group in Exchange 2007

Posted by Nausherwan under Exchange Management Shell

We can grant “Send on Behalf of  Distribution Group” permissions using Power Shell as follows.

Set-DistributionGroup -Identity DistributionGroupName -GrantSendOnBehalfTo Username1,Username2

Settings for Outlook 2007

Open outlook 2007 and compose a new message

Go to Options and select “Show From” field

Put that Distribution Group in From field to whom you want to send on behalf of from your mailbox

7th
JUL

How to export Message tracking Logs in CSV format in Exchange 2007

Posted by Nausherwan under Exchange Management Shell

Open Exchangem Management Shell.

Type the command.

Get-MessageTrackinglog -Server “Servername” -EventID “RECEIVE” -Start “7/7/2009 9:00:00 AM” -End “7/7/2009 5:16:00 PM” -ResultSize Unlimited | export-csv c:\Filename.csv

16th
FEB

How to get Mailbox Size in Exchange 2007

Posted by under Exchange Management Shell

In Exchange 2007 , You can get mailbox size using different Exchange cmdlets ,

To get mailbox size for individual user. You can use following command

Get-MailboxStatistics -Identity UserSamAccountName

Here is Output.

AssociatedItemCount     : 71
DeletedItemCount          : 29
DisconnectDate             :
DisplayName                 : xxxxxxxxxxxx
ItemCount                     : 5485
LastLoggedOnUserAccount : Domain\UserName
LastLogoffTime          :
LastLogonTime           : 2/4/2009 9:23:02 AM
LegacyDN                : /O=xxxxx/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIB
3SPDLT)/CN=RECIPIENTS/CN=xxxx
MailboxGuid             : f291a2e9-e123-4f2a-be4d-ec0349c54a10
ObjectClass             : Mailbox
StorageLimitStatus      : BelowLimit
TotalDeletedItemSize    : 2205239B
TotalItemSize           : 463667583B
Database                : xxxxx\xxxxx\xxxxxx
ServerName              : xxxxxx
StorageGroupName        : xxxxxx
DatabaseName            : xxxxxxx
Identity                : f291a2e9-e123-4f2a-be4d-ec0349c54a10
IsValid                 : True
OriginatingServer       : xxxxxx.xxx.xxx

You can see the size of mailbox in bytes , You can convert in Megabytes or Gbs

To Get Mailbox size for multiple mailboxes , You can use the following Powershell cmdlet.

Get-MailboxStatistics |where {$_.TotalItemSize -gt 100MB} | sort $_.TotalItemSize |FT DisplayName,ItemCount,TotalItemSize >c:\size.txt

The above command will create a file with output containing all users accounts having mailbox size greater than 100MB.


12th
JAN

How to Create a Room Mailbox for Manual Approval.

Posted by under Exchange Management Shell

1- Create a Room Mailbox Using Exchange Management Console

When you create a Room Mailbox , You will find that associated user will disable in Active directory , so   you will not able to access OWA for Room Mailbox , You have to assign permissions to an account to manage

2- To assign permissions on a Room Mailbox to owner , You can use the following cmdlet.

Add-MailboxPermission -Identity “Meeting Room Name” -User UserSamAccount -AccessRights FullAccess -InheritanceType All

3- Logon to Room Mailbox owner’s OWA  and Open Room Mailbox OWA , Click Option and then Resource Settings .select  the following Options.

Selected:  Automatically process meeting requests and cancellations
These users can schedule automatically if the resource is available:
Everyone
Selected:  Select Users and Groups:

These users can submit a request for manual approval if the resource is available:
Selected:  Everyone
Select Users and Groups:

These users can schedule automatically if the resource is available and can submit a request for    manual approval if the resource is unavailable:
Everyone
Selected:  Select Users and Groups:

For requests requiring approval:
Selected:  Always forward to delegates
Selected:  Always tentatively accept these requests

4- After these steps , Run the following command.

Set-MailboxCalendarSettings -Identity <MailboxIdParameter> [-AllRequestInPolicy <$true | $false>]  [-RequestInPolicy <RecipientIdParameter[]>]

Example :

Set-MailboxCalendarSettings -Identity “Meeting Room Name” -AllRequestInPolicy $true -RequestInPolicy UserSamAccount

5- Last and Final step to view output using Exchange Management Shell.

[PS] D:\>get-mailboxcalendarsettings -identity MeetingRoomName | fl

AutomateProcessing                           : AutoAccept
AllowConflicts                                    : False
BookingWindowInDays                       : 180
MaximumDurationInMinutes              : 1440
AllowRecurringMeetings                     : True
EnforceSchedulingHorizon                 : True
ScheduleOnlyDuringWorkHours         : False
ConflictPercentageAllowed                 : 0
MaximumConflictInstances                : 0
ForwardRequestsToDelegates             : True
DeleteAttachments                             : True
DeleteComments                                : True
RemovePrivateProperty                       : True
DeleteSubject                                     : True
DisableReminders                              : True
AddOrganizerToSubject                     : True
DeleteNonCalendarItems                   : True
TentativePendingApproval                 : True
EnableResponseDetails                      : True
OrganizerInfo                                     : True
ResourceDelegates                            : {User UserSamAccount}
RequestOutOfPolicy                           :
AllRequestOutOfPolicy                       : False
BookInPolicy                                      :
AllBookInPolicy                                  : False
RequestInPolicy                                 : {User UserSamAccount}
AllRequestInPolicy                             : True
AddAdditionalResponse                    : False
AdditionalResponse                          : <DIV><FONT size=2 face=Tahoma></FONT></DI
V>
RemoveOldMeetingMessages            : True
AddNewRequestsTentatively             : True
ProcessExternalMeetingMessages      : False
DefaultReminderTime                        : 15
RemoveForwardedMeetingNotifications : False
Identity                                                  : Domain/Users/Test Room

Note: UserSamAccount is a NT Login ID of  Room Mailbox Owner

Meeting Room Name is NT Login ID of Room Mailbox

5th
DEC

How to assign ownership rights on Distribution Group

Posted by Usman under Exchange Management Shell

You can use following cmdlet to assign ownership rights on distribution groups.

Add-AdPermission -identity “Group Name” -User “User’s SamAccountname” -AccessRights WriteProperty -Properties “Member”

-identity : Group display name instead of email id of group
-User : User’s samaccount name

Example :

Add-AdPermission -identity “New Group” -User “Ali” -AccessRights WriteProperty -Properties “Member”

In above example , User Ali will get full rights to add/remove members from distribution through Global Address Book.

2nd
DEC

How to Create Bulk MailBoxes in Exchange 2007

Posted by Usman under Exchange Management Shell

You have to create a CSV file to create bulk mailboxes exchanges in following format.

alias name UPN database password displayname firstname lastname samaccountname
AliJa Ali Jan Ali.Jan@domain.com Mailbox Database password Ali Jan Ali Jan AliJa

import-csv CreateRecipients.csv | foreach {$pswd = ConvertTo-SecureStri
ng $_.Password -asplaintext -force; new-mailbox -alias $_.alias -name $_.name -u
serprincipalname $_.UPN -database $_.database -org Bulk -Password $pswd -display
name $_.name -firstname $_.firstname -lastname $_.lastname -samaccountname $_.sa
maccountname}

Note :    CreateRecipients.csv   ( CSV File Name)
-Org Bulk ( Bulk is a name of organizational unit in active directory)

2nd

How to create Bulk Email Contacts in Exchange2007

Posted by Usman under Exchange Management Shell

You need to create a CSV file to create bulk email contacts in exchange 2007. You also need to create a Separate OU for contacts.

DisplayName EmailAddress
User A UserA@domain.com

Import-Csv Test.csv | ForEach { New-MailContact -Name $_.displayName -ExternalEmailAddress $_.Emailaddress -OrganizationalUnit “Contacts” }

You can add more fields according to you requirement such as , First Name , Last Name .