增加 MSXML 中的 XSL 堆栈大小

Increase XSL stack size in MSXML

在 MSXML 的 XSL 处理器中,运行 "larger" 数据集上的递归模板时出现错误。递归正确终止,并且也适用于 "smaller" 数据集,所以我知道这不是无限循环。有没有一种方法可以稍微增加堆栈大小作为快速修复,而不是重新编码以降低堆栈使用率(这可能是一个有用的长期目标)。

msxml3.dll error '80004005'  The XSL processor stack has overflowed - probable cause is infinite template recursion.

谢谢 Stack overflow 的读者们!

我不知道有任何此类设置或 属性 和文档 https://msdn.microsoft.com/en-us/library/ms766391%28v=vs.85%29.aspx only has some security related properties like MaxElementDepth and MaxXMLSize but no settings on the XSLT processor https://msdn.microsoft.com/en-us/library/ms757015%28v=vs.85%29.aspx

因此,基于此看来您需要重写代码并使用分治法等技术来减少递归深度。