WPF 自定义词典在 Windows Server 2019 和 Windows 10 最新版本之后无法正常工作

WPF Custom Dictionary is NOT working after Windows Server 2019 and Windows 10 latest versions

提问人:Ramanan 提问时间:8/1/2023 更新时间:8/1/2023 访问量:51

问:

我们正在运行旧的 WPF 应用程序,由于某些原因,我们仅坚持使用 .NET 4.5 版本。

使用下面的代码,我们将为每个 RichTextbox 控件添加一些自定义词典。

public void InitDictionary()
{
    var dictionaries = SpellCheck.GetCustomDictionaries(richText);
    if (dictionaries.Count == 0)
    {
        var dictionaryUri = TextBoxDictionary.DictionaryUri;
        if (dictionaryUri != null)
        {
            dictionaries.Add(dictionaryUri);
        }
    }
}

此代码在 Windows Server 2016 和 Windows 10 1670 版本中工作正常。

但相同的代码在 Windows Server 2019最新版本的 Windows 10不起作用

目前,我们无法将应用程序更新到 .Net 4.6.1 或最新版本

由于它在旧版本的 Windows 中运行良好,因此怀疑这是最新 Windows 操作系统的已知问题。如果我错了,请纠正我。

在不使用第三方控件的情况下是否有任何可靠的修复程序?

提前致谢。

C# WPF NET-4.5 拼写检查 Windows-Server-2016

评论

0赞 Ralf 8/1/2023
它是如何失败的?
2赞 JonasH 8/1/2023
不再支持 .Net Framework 4.5。因此,不应期望它应该在最新的 Windows 版本上运行。如果不受支持的框架不起作用,则不能责怪 Windows。
0赞 jdweng 8/1/2023
我怀疑自定义词典是 Word 的一部分,问题可能出在未安装 word 上。请参阅:answers.microsoft.com/en-us/msoffice/forum/all/...
0赞 Andy 8/2/2023
Wpf 中的自定义拼写检查词典与单词无关。
0赞 Ramanan 8/2/2023
同意@JonasH。谢谢!

答:

0赞 Ramanan 11/23/2023 #1

最后,我们发现,Windows中的用户自定义词典存在一些大小限制!

我们正在使用更大的自定义词典文件(近 2mb)。通过以下(MS 推荐)注册表修复正在解决我们的问题。

HKEY_CURRENT_USER\Software\Microsoft\Spelling\Dictionaries\AllowBiggerUD=1

AllowBiggerUD 作为 DWORD 32 位

https://learn.microsoft.com/en-us/windows/win32/api/spellcheck/nn-spellcheck-iuserdictionariesregistrar#remarks