I find that this problem occurs only if your potal language is different than en-US (in my case fr-FR) with DotNetNuke 4.9.0
If find that in Mail.vb infunction SendMail use user.Profile.PreferredLocale
with is for exemple en-US (US in uppercase)
passed to Localize.GetSystemMessage(locale, settings, subject, user, Localize.GlobalResourceFile, custom, "", settings.AdministratorId)
witch indirect call Localization.GetResource(ByVal ResourceFileRoot As String, ByVal objPortalSettings As PortalSettings, ByVal strLanguage As String) As Hashtable
In this function find :
If strLanguage Is Nothing Then
userLanguage = Thread.CurrentThread.CurrentCulture.ToString.ToLower
Else
userLanguage = strLanguage
End If
witch mean userLangage not in lower case
I change to :
If strLanguage Is Nothing Then
userLanguage = Thread.CurrentThread.CurrentCulture.ToString.ToLower
Else
userLanguage = strLanguage.ToLower
End If
and everything is ok now