REVISIÓN: "System.Exception: Win32.ExtTextOut fallado; Error de Win32: 997 "mensaje de error cuando el procesador de impresión EMF está bajo carga o cuando intenta imprimir varios informes a la vez en SSRS 2008

Nº de error: 132906 (Mantenimiento de contenido)
Número de errores de VSTS: 443528

Microsoft distribuye correcciones de Microsoft SQL Server 2008 como un archivo descargable. Como las revisiones son acumulativas, cada versión nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008.

Síntomas

Imagine el siguiente escenario:

  • Tiene un equipo que está ejecutando Microsoft SQL Server 2008 Reporting Services (SSRS 2008).

  • Instale la actualización acumulativa 7 para SQL Server 2008 Service Pack 1. Esta revisión se describe en el siguiente artículo de Microsoft Knowledge Base:

    CORREGIR 979740 : mensaje de Error cuando el procesador de impresión EMF está bajo carga o cuando intenta imprimir varios informes a la vez en SSRS 2008: "System.Exception: SelectClipRgn error: error de Win32: 997"

  • El procesador de impresión de metarchivo mejorado (EMF) está bajo tensión. O bien, intentar imprimir varios informes al mismo tiempo.

En este escenario, recibirá el siguiente mensaje de error:

System.Exception: Error en Win32.ExtTextOut; Error de Win32: 997

Además, se genera un archivo de minivolcado en la carpeta de registro de SSRS 2008.

Solución


La corrección para este problema en primer lugar se publicó en 8 de actualización acumulativa para SQL Server 2008 Service Pack 1. Para obtener más información acerca de este paquete de actualización acumulativa, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

981702 acum actualizar paquete 8 para SQL Server 2008 Service Pack 1Nota: Como las compilaciones son acumulativas, cada versión de corrección nueva contiene todas las revisiones y revisión de todas las revisiones de seguridad que se incluyeron con la anterior de SQL Server 2008. Le recomendamos que considere aplicar la versión más reciente de revisión que contenga este hotfix. Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:

970365 the SQL Server 2008 generaciones que se publicaron después del lanzamiento de SQL Server 2008 Service Pack 1
Las revisiones de Microsoft SQL Server 2008 se crean para determinados service Pack de SQL Server. Debe aplicar un hotfix de SQL Server 2008 Service Pack 1 en una instalación de SQL Server 2008 Service Pack 1. De forma predeterminada, cualquier hotfix suministrada en un service pack de SQL Server se incluye en el próximo service pack de SQL Server.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Más información

Información de la pila de llamadas

library!ReportServer_0-3!1008!03/30/2010-14:10:18:: i INFO: RenderForNewSession('/My Report')reportrendering!ReportServer_0-3!1008!03/30/2010-14:10:19:: e ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: An error occurred during rendering of the report., ;
Info: Microsoft.ReportingServices.ReportProcessing.UnhandledReportRenderingException: An error occurred during rendering of the report. ---> Microsoft.ReportingServices.OnDemandReportRendering.ReportRenderingException: An error occurred during rendering of the report. ---> System.Exception: Win32.ExtTextOut failed; Win32 error:997
at Microsoft.ReportingServices.Rendering.RichText.TextBox.ExtDrawTextRun(TextRun run, IntPtr hdc, FontCache fontCache, Int32 x, Int32 baselineY, Underline underline)
at Microsoft.ReportingServices.Rendering.ImageRenderer.ImageWriter.DrawTextRun(IntPtr hdc, FontCache fontCache, TextRun run, TypeCode typeCode, TextAlignments textAlign, VerticalAlignments verticalAlign, WritingModes writingMode, Directions direction, Point pointPosition, Rectangle layoutRectangle, Int32 lineHeight, Int32 baselineY)
at Microsoft.ReportingServices.Rendering.ImageRenderer.ReportTextBox.DrawTextRun(TextRun run, Paragraph paragraph, IntPtr hdc, Single dpiX, FontCache fontCache, Int32 x, Int32 y, Int32 baselineY, Int32 lineHeight, Rectangle layoutRectangle)
at Microsoft.ReportingServices.Rendering.RichText.TextBox.RenderParagraph(TextBox textBox, Paragraph paragraph, IntPtr hdc, FontCache fontCache, Int32 offsetX, Int32& offsetY, Rectangle layoutRectangle, Single dpiX)
at Microsoft.ReportingServices.Rendering.RichText.TextBox.Render(TextBox textBox, List`1 paragraphs, IntPtr hdc, FontCache fontCache, PointF offset, RectangleF layoutRectangle, Single dpiX, Boolean unitsInMM)
at Microsoft.ReportingServices.Rendering.RichText.TextBox.Render(TextBox textBox, List`1 paragraphs, IntPtr hdc, FontCache fontCache, PointF offset, RectangleF layoutRectangle, Single dpiX)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.<>c__DisplayClass1.<ProcessSimpleTextBox>b__0()
at Microsoft.ReportingServices.Rendering.ImageRenderer.MetafileGraphics.ExecuteSync(SynchronizedOperation synchronizedOperation)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessSimpleTextBox(String value, RectangleF textPosition, ReportTextBox rptTextBox, ReportParagraph reportParagraph, ReportTextRun reportTextRun, PointF offset)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessTextBox(RPLMeasurement measurement, RectangleF position)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLMeasurement measurement, RectangleF bounds, Boolean renderBorders, Boolean hasTablixCellParent)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessNonTablixContainerReportItems(RPLContainer container, RectangleF bounds)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLMeasurement measurement, RectangleF bounds, Boolean renderBorders, Boolean hasTablixCellParent)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessNonTablixContainerReportItems(RPLContainer container, RectangleF bounds)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLMeasurement measurement, RectangleF bounds, Boolean renderBorders, Boolean hasTablixCellParent)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessTablixContainer(RPLTablix tablix, RectangleF position, Single[] rowStarts, Single[] columnStarts)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLMeasurement measurement, RectangleF bounds, Boolean renderBorders, Boolean hasTablixCellParent)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessNonTablixContainerReportItems(RPLContainer container, RectangleF bounds)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessReportItem(RPLMeasurement measurement, RectangleF bounds, Boolean renderBorders, Boolean hasTablixCellParent)
at Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessPage(RPLReport rplReport, Int32 pageNumber, FontCache sharedFontCache, List`1 paragraphsItemizedData)
at Microsoft.ReportingServices.Rendering.ImageRenderer.ImageRenderer.Render(Report report, NameValueCollection deviceInfo, Hashtable renderProperties, CreateAndRegisterStream createAndRegisterStream)
at Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
--- End of inner exception stack trace ---
at Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(Report report, NameValueCollection reportServerParameters, NameValueCollection deviceInfo, NameValueCollection clientCapabilities, Hashtable& renderProperties, CreateAndRegisterStream createAndRegisterStream)
at Microsoft.ReportingServices.ReportProcessing.ReportProcessing.RenderReport(IRenderingExtension newRenderer, DateTime executionTimeStamp, ProcessingContext pc, RenderingContext rc, IChunkFactory cacheDataChunkFactory, IChunkFactory yukonCompiledDefinition, Boolean& dataCached)
--- End of inner exception stack trace ---

Referencias

Para obtener información sobre el modelo de servicio Incremental de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

935897 un modelo de servicio Incremental está disponible en el equipo de SQL Server para entregar revisiones para problemas detectados

Para obtener más información acerca del esquema de nomenclatura para las actualizaciones de SQL Server, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

822499 Nuevo esquema de nomenclatura para los paquetes de actualización de software de Microsoft SQL ServerPara obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

824684 descripción de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft

Autor (SME): v-jc
Redactor: v-vincli
Revisor técnico: asaxton
Redactor: v-chliao

¿Necesita más ayuda?

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Unirse a Microsoft Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×