I am using PDFCreator to print files to TIFF, one page per TIFF.
In this mode, Run action after saving files does not work.
This behaviour is the same when printing using a Printer and when using PDFCreator API in C#. This is problematic because there is no way to tell when PDFCreator is finished producing the TIFF images!
The problem may be fixed by ensuring that Run action after saving is executed after the last TIFF image (or other output file) has been produced.
I also suggest that in this case, when multiple files produced, be set to a space separated list of files (eg. "1.tiff 2.tiff 3.tiff") or be set to an empty string. A new output parameter - - an integer indicating the number of files produced would also be really helpful.
I spent a bit of time reading through the source code, looking for a reason why this problem is happening.
The relevant lines, as far as I can tell appear in `SaveEDoc()` function:
`50130 PDFFile = Trim$(Create_eDoc)
50140
50150 If PDFFile <> vbNullString Then
50160 SaveEDoc = True
50170 If Options.RunProgramAfterSaving = 1 Then
50180 If Options.OnePagePerFile = 1 Then
50190 PDFFile = Replace$(PDFFile, "%d", "1", , , vbTextCompare)
50200 End If
50210 If Options.RunProgramAfterSaving = 1 Then
50220 RunProgramAfterSaving Me.hwnd, PDFFile, _
Options.RunProgramAfterSavingProgramParameters, _
Options.RunProgramAfterSavingWindowstyle, PDFSpoolfile
50250 End If
50260 End If`
I can tell from the code above that `` should be set to the name of the first file (later, in `RunProgramAfterSaving`).
Perhaps the multi-page printing happens asynchronously and `Create_eDoc()` returns before the first file is actually created?? In this case `RunProgramAfterSaving(hwnd As Long, ByVal Docname As String, ...)` does not do anything because it checks if the file exists first:
`If FileExists(Docname) = True ...`
If so, then I am really at a loss how to find out when multi-page file printing is completed!! Please suggest what I can do to find out when PDF Creator finishes printing multi-page files!