Sometimes, the default maximum message size (including attachments) in Exchange is not enough (30 MB is the standard). To increase this to 100 MB, do the following: Open the Exchange Management Shell as Administrator.
First check the current maximum size on all relevant Exchange components:
Get-TransportConfig | ft MaxSendSize, MaxReceiveSize Get-ReceiveConnector | ft Name, MaxmessageSize Get-SendConnector | ft Name, MaxMessageSize Get-Mailbox Administrator |ft Name, MaxsendSize, MaxReceiveSize
Then set it to 100 MB for all components:
Set-TransportConfig -MaxSendSize 100MB -MaxReceiveSize 100MB Get-ReceiveConnector | Set-ReceiveConnector -MaxMessageSize 100MB Get-SendConnector | Set-SendConnector -MaxMessageSize 100MB Get-Mailbox | Set-Mailbox -MaxSendSize 100MB -MaxReceiveSize 100MB
That's it. Be aware that attachments are encoded before they are sent. This encoding adds about 30% of the size. So in reality, with the 100MB setting you can send and receive attachments that are 60 to 70 MB in size.
Update: It was pointed out, that for ActiveSync, the following additional script has to be run to allow 100MB of attachments (execute this in cmd as Administrator, not in PowerShell):
%windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:104857600 %windir%\system32\inetsrv\appcmd.exe set config "Default Web Site/Microsoft-Server-ActiveSync/" -section:system.web/httpRuntime /maxRequestLength:102400 %windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/Microsoft-Server-ActiveSync/" -section:system.webServer/security/requestFiltering /requestLimits.maxAllowedContentLength:104857600 %windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/Microsoft-Server-ActiveSync/" -section:system.web/httpRuntime /maxRequestLength:102400 %windir%\system32\inetsrv\appcmd.exe set config "Exchange Back End/Microsoft-Server-ActiveSync/" -section:appSettings /[key='MaxDocumentDataSize'].value:104857600
It is possible that these ActiveSync related settings are overridden with Cumulative Updates. So after the update, the script would have to be applied again.