Stream->SetSize Failed

Bei einem Kunden haben wir folgendes Problem: Die erste Ausgabe als E-Mail mit PDF-Dokument funktioniert wie erwartet, bei der zweiten Ausgabe enthält die E-Mail ein leeres PDF-Dokument.

  1. Ausgabe ohne Fehler:

[XPPRT1.dll] >EXPORT(0X0B0EE418):Execute CMLL21 : 12:29:42.117 00000550/03 8 [XPPRT1.dll] »[cmll21EX] Base:OnExportExecute(2, 0x0D6A4BA0, 0x0D9B8238) CMLL21 : 12:29:42.132 00000550/03 9 [XPPRT1.dll] »[cmll21EX] PDF:OnBeginPageExporting(...) CMLL21 : 12:29:42.132 00000550/03 0 [XPPRT1.dll] »*LS:>LsBLOBManagerGetStream(099EDC1B546B861DD94EA70C35C8EE97) CMLL21 : 12:29:42.179 00000550/03 1 [XPPRT1.dll] »*LS:<LsBLOBManagerGetStream() -> 1 (0X00000001) CMLL21 : 12:29:42.992 00000550/03 2 [XPPRT1.dll] »[cmll21EX] ->0x00000000 CMLL21 : 12:29:42.992 00000550/03 3 [XPPRT1.dll] »[cmll21EX] Base:EnumObjects('Briefpapier (PDF Hintergrund) [List & Label Briefpapier.LUL]', 5 (Bild)) CMLL21 : 12:29:42.992 00000550/03 4 [XPPRT1.dll] »[cmll21EX] ->1 CMLL21 : 12:29:42.992 00000550/03 5 [XPPRT1.dll] »[cmll21EX] PDF:OnEndPageExporting()

  1. Ausgabe mit Fehler:

[XPPRT1.dll] >EXPORT(0X0B0D5048):Execute CMLL21 : 12:31:01.187 00000550/03 1 [XPPRT1.dll] »[cmll21EX] Base:OnExportExecute(2, 0x0B108D28, 0x0B100B50) CMLL21 : 12:31:01.234 00000550/03 2 [XPPRT1.dll] »[cmll21EX] PDF:OnBeginPageExporting(...) CMLL21 : 12:31:01.234 00000550/03 3 [XPPRT1.dll] »*LS:>LsBLOBManagerGetStream(099EDC1B546B861DD94EA70C35C8EE97) CMLL21 : 12:31:01.234 00000550/03 4 ERR: Stream->SetSize(0+26107000) failed! CMLL21 : 12:31:01.781 00000550/03 5 clsFile((Stream))::Write(): write failure... 0/1048576 (Für diesen Vorgang ist nicht genügend Speicher verfügbar. (8007000e)) CMLL21 : 12:31:01.828 00000550/03 6 [XPPRT1.dll] »*LS:<LsBLOBManagerGetStream() -> 1 (0X00000001) CMLS21 : 12:31:01.828 00000550/03 7 ERR: Stream->SetSize(0+20971520) failed! CMLS21 : 12:31:02.125 00000550/03 8 clsFile((Stream))::Write(): write failure... 0/1048576 (Für diesen Vorgang ist nicht genügend Speicher verfügbar. (8007000e)) CMLL21 : 12:31:02.453 00000550/03 9 [XPPRT1.dll] »[cmll21EX] ->0x00000000 CMLL21 : 12:31:02.453 00000550/03 0 [XPPRT1.dll] »[cmll21EX] Base:EnumObjects('Briefpapier (PDF Hintergrund) [List & Label Briefpapier.LUL]', 5 (Bild)) CMLL21 : 12:31:02.453 00000550/03 1 [XPPRT1.dll] »[cmll21EX] ->1 CMLL21 : 12:31:02.468 00000550/03 2 [XPPRT1.dll] »[cmll21EX] PDF:OnEndPageExporting()

Wird das Programm beendet und neu gestartet, dann funktioniert die erste Ausgabe und die zweite hat wieder ein leeres PDF-Dokument.

Die Vorschau funktioniert meistens, manchmal wird dann das beigemischte PDF-Dokument ebenfalls nicht mehr angezeigt.

Dies passiert beim Kunden nicht auf allen Arbeitsplätzen.

Der Arbeitsspeicher ist nur zu 63% in Benutzung, die lokale Festplatte hat genügend Kapazität, die Netzwerklaufwerke ebenfalls. Der Virenscanner (TrendMicro) wurde bereits deaktiviert.

Über Hilfe und Ideen würde ich mich sehr freuen.

Ich habe mit Xbase++ dasselbe Problem, Ausgabe als PDF funktionieren mal, andere Male werden weiße Seiten erzeugt. An einer Lösung wäre ich auch sehr interessiert.

Hallo Herr Thiess,

vielen Dank für Ihren Beitrag.

Diese Frage läßt sich im Rahmen des Forums leider nicht abschließend klären - wir benötigen zur Klärung weitere Informationen von Ihnen, die auf dieser Plattform nicht sinnvoll ausgetauscht werden können. Gerne können Sie in unserem Supportportal unter An-Abmelden einen Support-Case eröffnen, bitte kopieren Sie dabei die relevanten Informationen aus diesem Thread in die Beschreibung.

Mit freundlichen Grüßen

Patrick Preuschoff
Technischer Support
combit GmbH

Hallo,

sieht recht spannend aus das Logfile… aber es sieht so aus, als ob beim zweiten Durchgang versucht wird ca. 26 MB Speicher zu reservieren… und genau das scheint nicht mehr zu klappen. Mögliche Ursachen - so denke ich:

  • Arbeitsspeicher zu diesem Zeitpunkt ist voll bzw. bereits überfüllt
  • Oder: Hier könne der Arbeitsspeicher bereist so fragmentiert sein, dass keine 26 MB am Stück reserviert werden können?

Beides würde ggf. dazu passen, dass nach einem Neustart der Anwendung (Speicher wurde freigegeben und steht wieder erneut sauber zur Verfügung) es beim ersten Mal wieder klappt.

Da es offenbar auch nicht alle Arbeitsplätze zu betreffen scheint, könnte ein genereller Blick auf die zur Verfügung gestellten System-Ressourcen (RAM-Ausstattung, Betriebssystem etc.) im direkten Vergleich mit funktionierenden Systemen helfen.

Auch immer wieder interessant: Der verwendete Druckertreiber… bitte hier auch mal versuchen auf allen Systemen den gleichen zu verwenden… bspw. Microsoft XPS Document Writer.

Mehr Ideen habe ich sonst auch nicht mehr auf die Schnelle… sonst müsste man hier den Support von combit für Detail-Analysen bemühen - ala Dump-Files, vollständige Logs und/oder eine Test-App.

Viel Erfolg und Grüße