com-Problem cclose schließt den pdfcreator nicht immer

Hallo!

Habe mit den Versionen 1.3.2 und 1.4.3 folgendes Problem (weiß nicht, ob das auch mit den älteren Versionen auftritt):

Ich habe ein VB6-Programm geschrieben, welches mir mittels der com-Schnittstelle die Autosave-Parameter so umstellt, dass der nächste Druck auf den PDFCreator-Druckertreiber entsprechend die PDF-Datei abspeichert. Nach erfolgreichem Erstellen der PDF-Datei rufe ich das Programm erneut so auf, dass es (nach Prüfung, dass die Printjobs abgearbeitet sind) den Befehl cclose aufruft. Klappt auch wunderbar auf den meisten Rechnern mit verschiedenen Windows-Versionen (bis hin zu Win7 64 Bit).

Jetzt habe ich einen älteren etwas langsameren Kunden-Rechner, der mit Windows XP läuft, wo nach cclose der PDFCreator trotzdem noch im Taskmanager verbleibt. Scheint also ähnlich dem damaligen cclose-Bug zu sein. Die vorherige PDF-Datei wurde korrekt angelegt, aber nach Aufruf von cclose blockkiert der PDFCreator.

Will ich dann einen neuen Druckdurchlauf starten, erscheint dann das Creator-Symbol rechts unten in der Taskleiste mit einem roten Kästchen und es ist "Angehalten" angeklickt. Der neue Druckauftrag steht dann zwar in der Jobliste, aber das automatische Speichern funktioniert nicht mehr.

Was ist da los und wie kann ich das abfangen?

Was mir aufgefallen ist: Wenn ich nach dem cclose nochmal cprogramisrunning abfragen will, erscheint ein PDF-Fehler 70, Zugriff verweigert. Weiß nicht, ob das weiterhilft. Bei meinem Programmierrechner (Windows 7 64-Bit) kommt der Fehler nicht.

Ich hoffe, jemand kann mir helfen.

Viele Grüße

Gerhard

 

Nachtrag: Ich hatte am entsprechenden Rechner schon mehrmals beide Versionen 1.3.2 und 1.4.3 de-/neuinstalliert (mit Rechner-Neustart zwischendurch), hat alles nichts geholfen.

 

Hi,

 

ist auf dem WindowsXP Rechner servicepack 2/3 installiert?

 

MfG

 

Robin

Hi!

Muss ich noch prüfen, ich kann den Kunden gerade nicht erreichen.

Ich kläre das, spiele notfalls die aktuellen Windows-Updates ein und melde mich nochmal.

Viele Grüße

Gerhard

Hi!

Also automatische Updates sind aktiviert, XP Service Pack 3 und alle wichtigen Updates sind drauf. Lediglich bei den optionalen Updates steht noch ein dotnet framework 3.51 Servicepack Sprachpaket und die Framework 4-Updates aus, aber das sollte doch nichts ausmachen?

Was ich noch feststellen konnte: Nachdem ich mit meinem Programm die Autosave-Einstellungen und den PDF-Dateinamen gesetzt habe kommt rechts unten in der Taskleiste das PDFCreator-Symbol mit grünem Kästchen (also Druckbereit). Nachdem ich den Druckauftrag geschickt habe und ich den cclose-Befehl ausführen will, verschwindet das Symbol zwar, aber im Taskmanager bleibt der PDFCreator drin.

Wenn ich nun aber vor dem cclose-Befehl eine Msgbox öffne (und stehenlasse), dann einmal rechts unten über das Taskleistensymbol das PDFCreator-Fenster anzeigen lasse, wieder zum Taskleistensymbol minimiere und dann erst meine Msgbox schließe, so dass der cclose ausgeführt wird, dann klappt es korrekt.

Schließe ich die Msgbox, ohne das PDFCreator-Fenster einmal anzeigen zu lassen, kommt aber wieder der Absturz. Zumindest habe ich das so zweimal ausprobieren können (komme leider nicht immer auf den Kundenrechner drauf).

Irgendwo scheint da noch was zeitkritisches beim cclose zu sein.

Ich hoffe, es findet sich noch eine Lösung.

Viele Grüße

Gerhard

 

Hi,

 

könntest Du uns evtl. ein kleines Beispiel dazu basteln und zum testen schicken ?(supportATpdfforge.org)?

 

MfG

 

Robin

Hi!

Beispiel wird schwierig, da ich das nur mit unserem kompletten Programmpaket nachvollziehen kann. Ich habe aber mal testweise den pdfcreator-Quelltext (momentan Version 1.32, da ich bei 1.43 das selbe Verhalten hatte) geladen und in der cclose-Routine folgende msgbox eingebaut:

...

50300  cClose = True
50310
50320  Set mError = Nothing
'---ErrPtnr-OnError-START--- DO NOT MODIFY ! ---
MsgBox "cclose-Aufruf abgeschlossen"
Exit Function
 

Die msgbox wird angezeigt und auch sonst kommen keine weiteren Fehlermeldungen, trotzdem bleibt der pdfcreator aktiv im Taskmanager. Scheinbar werden irgendwie nicht alle Formulare entladen.

Ich habe mittlerweile den dort installierten Norton Internet Security in Verdacht, da übel mitzuspielen. Ich weiß noch nicht, welche Norton-Version das ist.

Bei der nächsten Gelegenheit wollen wir den mal komplett deinstallieren und prüfen, ob der pdfcreator dann läuft.

Melde mich dann wieder.

Viele Grüße

Gerhard

Hallo nochmal!

Konnte jetzt den Norton Internet Security 2012 deinstallieren und siehe da, das Problem war weg. Habe daraufhin mal Norton 360 installiert (neueste Version) und prompt war das Problem wieder da. Hängt also auf jeden Fall mit der Norton-Software zusammen.

Die Kundin ist jetzt leider 1 Woche im Urlaub, so dass ich vorerst nicht mehr auf den Rechner komme. Gibt es irgendwelche erweiterten Logs, die ich danach dann aktivieren kann, die da vielleicht helfen?

Viele Grüße

Gerhard

 

Hi,

 

man kann noch logging für die pdfcmon.dll aktivieren, dazu muss ein neuer Registry Eintrag in HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Print\\Monitors\\pdfcmon mit Name : Logging, Wert : 1 (als 32 bit DWORD) erstellt werden, das log wird dann in %Windir%\\Temp\\_pdfcmonLog.txt gespeichert. Vermutlich wird das aber nicht viel helfen, evtl. mal bei Norton fragen, woran das liegen könnte.

 

MfG

 

Robin