Microsoft Outlook 2016 › Outlook Options › Mail › Compose Messages
Specify wait time to evaluate sensitive content
Supported on SUPPORTED_Windows7 (defined in the Windows templates)
What it does
This policy setting is used to define the waiting time for evaluating sensitive content in emails before a user can send them. Customize whether immediate email sending is allowed, sending is permitted after a specific wait time, or complete evaluation is required before sending. Regardless of the setting, the service will continue the evaluation in the background and take appropriate action based on the results, such as blocking delivery if necessary. If you disable or do not configure this policy setting, emails will be sent right away without waiting for the final evaluation of the configured policies. If you enable this policy setting, you can set a specific wait time, measured in seconds (in the range of 0-9999), before the "Send Anyway" button appears in the waiting dialog. This allows users to send the mail even before the policy evaluation is complete. Please note that setting the wait time above 9999 indicates that users are not allowed to send the mail without evaluation. In such cases, the "Send Anyway" button will never be shown.
What it writes
- Hive
- HKEY_CURRENT_USER
- Registry key
software\policies\microsoft\office\16.0\outlook\options\mail
Why it needs changes for Intune
- Policy references a Windows supportedOn definition.
- ADMX-INTUNE-WINDOWS-SUPPORTEDON-REFERENCE
Options
| Option | Type | Registry value | Allowed values |
|---|---|---|---|
| In secondsDefault: 5 | Number | dlpwaitonsendtimeout |
0 to 10000 |
Configure and deploy
Choose a state and the option values; the output below is generated from the template for exactly that.
Enabled · User · template defaults
Registry file (.reg)
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\outlook\options\mail]
"dlpwaitonsendtimeout"=dword:00000005
PowerShell
$ErrorActionPreference = 'Stop'
function Set-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name,
[Parameter(Mandatory = $true)][string] $PropertyType,
[Parameter(Mandatory = $true)][object] $Value
)
if (-not (Test-Path -LiteralPath $Path)) {
New-Item -Path $Path -Force | Out-Null
}
New-ItemProperty -LiteralPath $Path -Name $Name -PropertyType $PropertyType -Value $Value -Force | Out-Null
}
function Remove-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name
)
if (Test-Path -LiteralPath $Path) {
Remove-ItemProperty -LiteralPath $Path -Name $Name -Force -ErrorAction SilentlyContinue
}
}
function Clear-RegistryKeyValues {
param(
[Parameter(Mandatory = $true)][string] $Path
)
if (-not (Test-Path -LiteralPath $Path)) {
return
}
foreach ($propertyName in (Get-Item -LiteralPath $Path).Property) {
Remove-ItemProperty -LiteralPath $Path -Name $propertyName -Force -ErrorAction SilentlyContinue
}
}
# Policy: Specify wait time to evaluate sensitive content
# Name: L_SpecifyWaitOnSendTimeoutForDLPEvaluation
# Scope: User
# State: Enabled
# Source: outlk16.admx
Set-RegistryValue -Path 'Registry::HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\outlook\options\mail' -Name 'dlpwaitonsendtimeout' -PropertyType 'DWord' -Value 5
- The OMA-URI is an inferred ADMX-backed Policy CSP candidate derived from the source ADMX file name and policy name.
- Some Microsoft policies use built-in Policy CSP pages whose area names don't match the ADMX file name, so verify the candidate against Microsoft Learn before deployment.
ADMX profile candidate (OMA-URI)
./User/Vendor/MSFT/Policy/Config/ADMX_outlk16/L_SpecifyWaitOnSendTimeoutForDLPEvaluationADMX SyncML candidate
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Replace>
<CmdID>1</CmdID>
<Item>
<Meta>
<Format>chr</Format>
<Type>text/plain</Type>
</Meta>
<Target>
<LocURI>./User/Vendor/MSFT/Policy/Config/ADMX_outlk16/L_SpecifyWaitOnSendTimeoutForDLPEvaluation</LocURI>
</Target>
<Data><enabled/>
<data id="L_SpecifyWaitOnSendTimeoutForDLPEvaluationSpinID" value="5"/></Data>
</Item>
</Replace>
<Final/>
</SyncBody>
</SyncML>Intune remediation scripts
Detection
$ErrorActionPreference = 'Stop'
$reasons = [System.Collections.Generic.List[string]]::new()
function Test-RegistryValueExists {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name
)
if (-not (Test-Path -LiteralPath $Path)) {
return $false
}
return $null -ne (Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction SilentlyContinue)
}
function Test-RegistryValueEquals {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name,
[Parameter(Mandatory = $true)][string] $Kind,
[Parameter(Mandatory = $true)][object] $Expected
)
if (-not (Test-Path -LiteralPath $Path)) {
return $false
}
$valueObject = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction SilentlyContinue
if ($null -eq $valueObject) {
return $false
}
$actual = $valueObject.$Name
switch ($Kind) {
'String' { return [string]$actual -ceq [string]$Expected }
'ExpandString' { return [string]$actual -ceq [string]$Expected }
'DWord' { return [uint32]$actual -eq [uint32]$Expected }
'QWord' { return [uint64]$actual -eq [uint64]$Expected }
'MultiString' {
$actualArray = @($actual)
$expectedArray = @($Expected)
if ($actualArray.Count -ne $expectedArray.Count) { return $false }
for ($index = 0; $index -lt $actualArray.Count; $index++) {
if ([string]$actualArray[$index] -cne [string]$expectedArray[$index]) { return $false }
}
return $true
}
'Binary' {
$actualArray = [byte[]]$actual
$expectedArray = [byte[]]$Expected
if ($actualArray.Length -ne $expectedArray.Length) { return $false }
for ($index = 0; $index -lt $actualArray.Length; $index++) {
if ($actualArray[$index] -ne $expectedArray[$index]) { return $false }
}
return $true
}
default { return [string]$actual -ceq [string]$Expected }
}
}
# Policy: Specify wait time to evaluate sensitive content
# Name: L_SpecifyWaitOnSendTimeoutForDLPEvaluation
# Scope: User
# State: Enabled
# Source: outlk16.admx
$isMatch = Test-RegistryValueEquals -Path 'Registry::HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\outlook\options\mail' -Name 'dlpwaitonsendtimeout' -Kind 'DWord' -Expected 5
if (-not $isMatch) {
$reasons.Add('Value mismatch: HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\outlook\options\mail\dlpwaitonsendtimeout') | Out-Null
}
if ($reasons.Count -eq 0) {
Write-Output 'Compliant'
exit 0
}
$reasons | ForEach-Object { Write-Output $_ }
exit 1
Remediation
$ErrorActionPreference = 'Stop'
function Set-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name,
[Parameter(Mandatory = $true)][string] $PropertyType,
[Parameter(Mandatory = $true)][object] $Value
)
if (-not (Test-Path -LiteralPath $Path)) {
New-Item -Path $Path -Force | Out-Null
}
New-ItemProperty -LiteralPath $Path -Name $Name -PropertyType $PropertyType -Value $Value -Force | Out-Null
}
function Remove-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name
)
if (Test-Path -LiteralPath $Path) {
Remove-ItemProperty -LiteralPath $Path -Name $Name -Force -ErrorAction SilentlyContinue
}
}
function Clear-RegistryKeyValues {
param(
[Parameter(Mandatory = $true)][string] $Path
)
if (-not (Test-Path -LiteralPath $Path)) {
return
}
foreach ($propertyName in (Get-Item -LiteralPath $Path).Property) {
Remove-ItemProperty -LiteralPath $Path -Name $propertyName -Force -ErrorAction SilentlyContinue
}
}
# Policy: Specify wait time to evaluate sensitive content
# Name: L_SpecifyWaitOnSendTimeoutForDLPEvaluation
# Scope: User
# State: Enabled
# Source: outlk16.admx
Set-RegistryValue -Path 'Registry::HKEY_CURRENT_USER\software\policies\microsoft\office\16.0\outlook\options\mail' -Name 'dlpwaitonsendtimeout' -PropertyType 'DWord' -Value 5
History 1 retained release
- 5568.100010 Aug 2026
- Already present in the first release ChangeIntel keeps.
Template
- Internal name
L_SpecifyWaitOnSendTimeoutForDLPEvaluation- Namespace
outlk16.Office.Microsoft.Policies.Windows- Template file
outlk16.admx- Release
- Microsoft 365 Apps 5568.1000 · file set
8be05d876aae137d…
Definition, editor controls and support
Definition
<policy class="User" displayName="$(string.L_SpecifyWaitOnSendTimeoutForDLPEvaluation)" explainText="$(string.L_SpecifyWaitOnSendTimeoutForDLPEvaluationExplain)" key="software\policies\microsoft\office\16.0\outlook\options\mail" name="L_SpecifyWaitOnSendTimeoutForDLPEvaluation" presentation="$(presentation.L_SpecifyWaitOnSendTimeoutForDLPEvaluation)" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="outlk16.Office.Microsoft.Policies.Windows:L_ComposeMessages" />
<supportedOn ref="Microsoft.Policies.Windows:SUPPORTED_Windows7" />
<elements>
<decimal id="L_SpecifyWaitOnSendTimeoutForDLPEvaluationSpinID" maxValue="10000" minValue="0" valueName="dlpwaitonsendtimeout" />
</elements>
</policy>Editor controls
<presentation id="L_SpecifyWaitOnSendTimeoutForDLPEvaluation" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<decimalTextBox defaultValue="5" refId="L_SpecifyWaitOnSendTimeoutForDLPEvaluationSpinID" spinStep="1">In seconds:</decimalTextBox>
</presentation>Supported platforms and category
outlk16.Office.Microsoft.Policies.Windows:category:L_ComposeMessages
<category displayName="$(string.L_ComposeMessages)" name="L_ComposeMessages" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="outlk16.Office.Microsoft.Policies.Windows:L_Mail" />
</category>
outlk16.Office.Microsoft.Policies.Windows:category:L_Mail
<category displayName="$(string.L_Mail)" name="L_Mail" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="outlk16.Office.Microsoft.Policies.Windows:L_OutlookOptions" />
</category>
outlk16.Office.Microsoft.Policies.Windows:category:L_MicrosoftOfficeOutlook
<category displayName="$(string.L_MicrosoftOfficeOutlook)" name="L_MicrosoftOfficeOutlook" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions" />
outlk16.Office.Microsoft.Policies.Windows:category:L_OutlookOptions
<category displayName="$(string.L_OutlookOptions)" name="L_OutlookOptions" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="outlk16.Office.Microsoft.Policies.Windows:L_MicrosoftOfficeOutlook" />
</category>
outlk16.Office.Microsoft.Policies.Windows:unresolved:Microsoft.Policies.Windows:SUPPORTED_Windows7
<unresolved reference="Microsoft.Policies.Windows:SUPPORTED_Windows7" />
outlk16.Office.Microsoft.Policies.Windows:category:L_ComposeMessages
<category displayName="$(string.L_ComposeMessages)" name="L_ComposeMessages" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="outlk16.Office.Microsoft.Policies.Windows:L_Mail" />
</category>
<strings><string id="outlk16.Office.Microsoft.Policies.Windows:L_ComposeMessages">Compose Messages</string></strings>
outlk16.Office.Microsoft.Policies.Windows:category:L_Mail
<category displayName="$(string.L_Mail)" name="L_Mail" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="outlk16.Office.Microsoft.Policies.Windows:L_OutlookOptions" />
</category>
<strings><string id="outlk16.Office.Microsoft.Policies.Windows:L_Mail">Mail</string></strings>
outlk16.Office.Microsoft.Policies.Windows:category:L_MicrosoftOfficeOutlook
<category displayName="$(string.L_MicrosoftOfficeOutlook)" name="L_MicrosoftOfficeOutlook" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions" />
<strings><string id="outlk16.Office.Microsoft.Policies.Windows:L_MicrosoftOfficeOutlook">Microsoft Outlook 2016</string></strings>
outlk16.Office.Microsoft.Policies.Windows:category:L_OutlookOptions
<category displayName="$(string.L_OutlookOptions)" name="L_OutlookOptions" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="outlk16.Office.Microsoft.Policies.Windows:L_MicrosoftOfficeOutlook" />
</category>
<strings><string id="outlk16.Office.Microsoft.Policies.Windows:L_OutlookOptions">Outlook Options</string></strings>