Powershell & cmdlet - In a Nutshell - Part 7 - Configure the Pickup directory using Set-TransportServer cmdlet

Find the small article which talks about how to configure the pickup directory in Exchange Server 2007. 

Exchange Server 2007 & configuring Pickup directory:

Its' quite interesting to configure the pickup directory in Exchange Server 2007 environment. As we know that the Pickup directory is used by administrators for mail flow testing, or by applications that must create and submit their own messages. If we copy the correctly formatted e-mail message files to the Pickup directory are submitted for delivery.

  • If you've worked configuring with Exchange Server 2003, the same way it won't work "AS IS" in this environment. 
  • You cannot configure the Pickup directory by using the Exchange Management Console.
  • To configure the Pickup directory, you must use the Exchange Management Shell

Some points to remember:

  • By default, the Pickup directory is located at C:\Program Files\Microsoft\Exchange Server\TransportRoles\Pickup. The directory must be local to the Exchange 2007 computer.

  • By default, the Pickup directory exists on every Exchange 2007 computer that has the Hub Transport server role or the Edge Transport server role installed. 

  • We must log on by using an account that is a member of the local Administrators group on that computer, where Edge Transport server role is installed.

  • By default, the Microsoft Exchange Transport service uses the security credentials of the Network Service user account to create the new Pickup directory and apply the correct permissions

  • Permissions required:

    • Administrator: Full Control
    • System: Full Control
    • Network Service: Read, Write, and Delete Subfolders and Files

Set-TransportServer cmdlet:  

To configure the Pickup directory location, we can make use of "Set-TransportServer" cmdlet. This cmdlet lets you configure any transport configuration parameter on a Microsoft Exchange Server 2007 Hub Transport or Edge transport server.

The Set-TransportServer cmdlet manipulates the following groups of parameters:

  • Domain identity
  • Connection limiting
  • Failed message retry intervals and time-outs
  • Delivery status notification (DSN) messages, intervals, and time-outs
  • Domain Name System (DNS) sources
  • Protocol, undeliverable mail (badmail), and pickup storage location and file size
  • Message tracking location, age, and log size

Note: The Set-TransportServer cmdlet does not require the Identity parameter to be specified when you run the command. When you use the Set-TransportServer command, you can set any number of parameters at the same time.

Configuring the Pickup Directory Location:

To set the Pickup directory to C:\Pickup Directory on an Exchange 2007 computer named Exchangesvr, run the following command:

Set-TransportServer Exchangesvr -PickupDirectoryPath "C:\Pickup Directory"

Note: Setting the value of the PickupDirectoryPath parameter to $null disables the Pickup directory. The directory that is specified by the PickupDirectoryPath parameter and the ReplayDirectoryPath parameter can't be the same.

Still issues or not successful to configure Pickup directory location, you can create the new Pickup directory and apply the correct permissions to it before you use the PickupDirectoryPath parameter with the Set-TransportServer cmdlet.