[VBA][00]Processus restant en memoire !
Bonsoir
Voila mon probleme. J'imprime chaque page de mon etat via pdfcreator. J'utilise pour cela:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| Dim pdfjob As PDFCreator.clsPDFCreator
Set pdfjob = New PDFCreator.clsPDFCreator
.......
While Not rst.EOF
pdfFileName = rst![First Name] & rst![Last Name] '& ".pdf"
With pdfjob
.cStart "/NoProcessingAtStartup"
.cOption("UseAutosave") = 1
.cOption("UseAutosaveDirectory") = 1
.cOption("AutosaveDirectory") = "C:\temp\"
.cOption("AutosaveFilename") = pdfFileName
.cOption("AutosaveFormat") = 0
.cClearCache
End With
'IMPRESSION
.....
'Attente fin generation du fichier pdf
C = 0
Do While (pdfjob.cOutputFilename = "") And (C < (maxTime * 1000 / sleepTime))
C = C + 1
Sleep 200
Loop
Sleep 2000 ' Wait until PDFCreator is removed from memory
Wend
pdfjob,cClose
pdfjob=Nothing |
Tout se passe normallement, un processus se cree indicant que pdfcreator est lance et un autre processus spooler
se cree durant l'imression de chaque page.
Cependant de temps en temps il arrive que le processus principal de pdf creatror (lance avec pdfjob.cStart "/NoProcessingAtStartup")
ne s'arrete pas a la fin de l'impression de toutes les pages, alors que selon ma comprehension, pdfjob.cClose et pdfjob=Nothing devrait l'arreter.
Si ce processus ne sarrete pas, a la prochaine impression d'un etat tout se passe normallement aucun mesage d'erreur pdfcreator indique que les fichiers sont cres
MAIS LES FICHIERS PDF NE SONT PAS CRES ???8O
Ma question est pourquoi si le processu pdfcreator est deja lance, mes impression future ne marchent pas?
comment puis je a la fin de chaque impression arreter de maniere sure le processus principal de pdfCreator , afin que ma prochaine impression fonctionne ???
Le seul moyen est il de tuer le processus ?
A noter que ce probleme se presente qu'une fois sur deux donc parfois des la premiere impression, parfois plus tard.
Desole d'avoir ete long. Merci encore