pchaloux
asked on
Shell Execute Print
Hi,
I'm trying to print a PDF document from VB.
I tried : myProcessID = Shell(all, 0) but I don't know WHEN to kill the process since I don't know if the print is done.
I tried ShellExecute(hwnd, "Print", file, flags, "", 0) but I don't know WHAT process to kill
I'm using Acrobat 6.0 and after the printing is done, the application Acrobat is still in my process list, but I would want it to die.
What should i do ?
thanks in advance
I'm trying to print a PDF document from VB.
I tried : myProcessID = Shell(all, 0) but I don't know WHEN to kill the process since I don't know if the print is done.
I tried ShellExecute(hwnd, "Print", file, flags, "", 0) but I don't know WHAT process to kill
I'm using Acrobat 6.0 and after the printing is done, the application Acrobat is still in my process list, but I would want it to die.
What should i do ?
thanks in advance
Hi
The approach that u have taken is perfect.
myProcessID = Shell(all, 0)
Now since the printing process is asynchronous with ur execution. We need not be aware of whether printing is complete.
Due to ur Shell command the Acorobat EXE is launched and the printing starts. After that in ur program just say:
ExitProcess myProcessID
This is an API call. myProcessID will contain the process ID of the Acrobat and hence it will terminate the Reader.
If u require to capture the status of the printing process then this approach is not suitable. Because here we are getting the status whether the Acrobat EXE has launched successfully or not.
Regards,
VBS
The approach that u have taken is perfect.
myProcessID = Shell(all, 0)
Now since the printing process is asynchronous with ur execution. We need not be aware of whether printing is complete.
Due to ur Shell command the Acorobat EXE is launched and the printing starts. After that in ur program just say:
ExitProcess myProcessID
This is an API call. myProcessID will contain the process ID of the Acrobat and hence it will terminate the Reader.
If u require to capture the status of the printing process then this approach is not suitable. Because here we are getting the status whether the Acrobat EXE has launched successfully or not.
Regards,
VBS
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Hi there,
We (my collegues and I) already tried what you suggested, and nothing worked.
I think it's a bug in Acrobat Reader 6.0 because my collegues who have acrobat 5.0 don't have any problem with he solution you gave.
We (my collegues and I) already tried what you suggested, and nothing worked.
I think it's a bug in Acrobat Reader 6.0 because my collegues who have acrobat 5.0 don't have any problem with he solution you gave.
Hi,
I think there's something wrong with your Acrobat Reader installation. I tested it with VB6 SP5, both with Acrobat 5.0 and Acrobat 6.0, and it just works fine !?
Regards!
I think there's something wrong with your Acrobat Reader installation. I tested it with VB6 SP5, both with Acrobat 5.0 and Acrobat 6.0, and it just works fine !?
Regards!
Does it work now with Acrobat 6.0? Did you find the problem?
Regards!
Regards!
Instead of using Shell, I would try to use a reference or a component that allows you to do the printing through COM
Dabas