PDF's not Created When the Application is Launched from a Service

PDF-XChange Drivers API (only) V4/V5
This Forum is for the use of Software Developers requiring help and assistance for Tracker Software's PDF-XChange Printer Drivers SDK (only) - VERSION 4 & 5 - Please use the PDF-Tools SDK Forum for Library DLL assistance.

Moderators: TrackerSupp-Daniel, Tracker Support, Vasyl-Tracker Dev Team, Chris - Tracker Supp, Sean - Tracker, Tracker Supp-Stefan

Post Reply
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

PXC6::IPXCPrinterPtr is not creating PDF files when the application is launched from a service. The same application launched with the same command line from a command prompt creates PDF's as expected. Are there a known issues using PDF-XChange from applications launched from services?
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

Hello steve.thresher,

I believe the drivers can not work in that way - but am awaiting a confirmation from our dev team.

Regards,
Stefan
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Do you know how long it will take to get an answer from the developers?
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

If the printer cannot be used from a service then do you have any suggestions on how we can utilise the printer from an unattended process?
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

Hello Steve,

Apologies for the delay in following up on this.
I am now checking with my colleagues directly - and should have an answer for you very shortly!

Regards,
Stefan
User avatar
Ivan - Tracker Software
Site Admin
Posts: 3549
Joined: Thu Jul 08, 2004 10:36 pm
Location: Vancouver Island - Canada
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Ivan - Tracker Software »

Can you please try if enabling the "Allow service to interact with desktop" option for your service solves the problem?
Tracker Software (Project Director)

When attaching files to any message - please ensure they are archived and posted as a .ZIP, .RAR or .7z format - or they will not be posted - thanks.
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Thanks for the response. I've tried using my credentials for the service and that made no difference. I'll try the interact with desktop option and report back.
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

Thanks for the follow up Steve,

Looking forward to your feedback once you've had the chance to test it!

Cheers,
Stefan
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Hi Stefan,

Unfortunately the 'Allow desktop interaction' option has not fixed the problem. Basically my program is waiting for the PDF to be produced but the file never appears. The callstack for pdfSaver6.exe is as follows:

> win32u.dll!NtUserGetMessage() Unknown
user32.dll!GetMessageW() Unknown
pdfSaver6.exe!00007ff6cf9e09c1() Unknown
pdfSaver6.exe!00007ff6cf9e08b4() Unknown
pdfSaver6.exe!00007ff6cf9e1bc2() Unknown
pdfSaver6.exe!00007ff6cfbc6fe4() Unknown
kernel32.dll!BaseThreadInitThunk() Unknown
ntdll.dll!RtlUserThreadStart() Unknown

I had a copy of SysInternal's ProcessMonitor running at the time and I've attached a copy of the trace which includes all events from any process that contains pdf in the name. I'm out of ideas right now but I'm happy to run any diagnostic software you care to provide or I'm sure I can sort out remote access for your developers if that would help.

Kind regards
Steve.
Attachments
pdfSaver6.zip
(1.47 MiB) Downloaded 224 times
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Any suggestions at all on what I could try next?
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Sorry to nag but I have several customers that are affected by this issue and they're starting to get quite impatient. Is there anything further I can try to get this solution working?
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Could you please give me an update on what is happening with this issue?
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Could you please let me know if this issue will be investigated further?
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Could you please let me know if this issue will be investigated further?
User avatar
Ivan - Tracker Software
Site Admin
Posts: 3549
Joined: Thu Jul 08, 2004 10:36 pm
Location: Vancouver Island - Canada
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Ivan - Tracker Software »

Sorry, we just missed your posts. My apology.

Will take a look as soon as possible. As far as I remember it is essential to have "Allow service to interact with desktop" option enabled as otherwise, the driver cannot communicate with another part - pdfSaver - which generates PDFs.

But it seems there are some other circumstances in your case and will check what it might be.
Tracker Software (Project Director)

When attaching files to any message - please ensure they are archived and posted as a .ZIP, .RAR or .7z format - or they will not be posted - thanks.
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Excellent! I look forward to your response.
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Any idea how much longer it will be until this issue can be progressed?
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

We are having a major release in a couple of days - after that we'll look into your problem.

Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Thanks for the update.
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

You are welcome Steve,

The new version is now out - so I've reminded Sasha of this topic and your problem!

Cheers,
Stefan
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

Here's a sample that I had a long time ago for printing from the Windows Service:
Service.rar
(199.29 KiB) Downloaded 205 times
Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Could you please tell me how I register the assembly / DLL so I have access to the PXCComLib5.CPXCControlEx class / object from within the attached C# solution?
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

Well that was a very long time ago, when this sample was written. I suspect that the regsvr32 was used to register the dll.

Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

I've not been able to get the sample to build yet given I'm using version 6 of the product not version 5. Would you be able to provide an upgraded version of the sample that will work with version 6?

Also, while looking for information on how to build the sample, I found this entry on StackOverflow:

https://stackoverflow.com/questions/218 ... ws-service

It suggests someone else was having the same problem as me. Have you actually tried the scenario listed above?
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

You will have to use newer library reference in the project:
Capture26.PNG
Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Thanks for the update, I can now build the solution.

The problem now is both the forms app and service fail when starting the print job. The forms app gives:

An unhandled exception of type 'System.ComponentModel.Win32Exception' occurred in System.dll

Additional information: The specified executable is not a valid application for this OS platform.

The attached screenshot shows what is displayed when the service is started. Do you have any suggestions?
Attachments
C# service error.jpg
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

I still cannot get the sample to work. I've tried tweaking the case of the verb name but that hasn't made any difference. I've attached an image that I believe shows all relevant details at the time the print job is started.

I've also tried to manually initiate what the code is running by dragging the PDF file to the 'see whats printing' dialog. It appears to start the application associated with PDF files and then intiates a print job to the required printer. Screenshots of this are also attached.
Attachments
manual drag and drop 2.jpg
manual drag and drop 1.jpg
Debug screenshot at the point of failure.jpg
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

I am trying to make this one work - it worked several years ago when the sample was made. Right now it only works correctly with UseShellExecute set to true. But sadly that won't work from the process itself. From what I read the problem is in the .Net updates.

Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Thanks for the update Alex.
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

Do you need to do this in the .Net? I've spend too much time on this and I can't seem to find the solution. You will have to continue the investigation by yourself. The problem lies somewhere in the UseShellExecute = false. You will have to find how to start a process with this parameter. The problem itself is not in our printer but in the .Net Process functionality, thus I'm afraid I can't assist further here.

Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

I have a process that produces PDF files which works when run standalone. The problem is when the process is launched from a service, pdfsaver is started but no PDF is produced (see callstack in an earlier event). The sample you provided was your proof that PDFs can be created from a service but it doesn't work. Can you please review the earlier events as we seem to have gone off on a tangent.
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

Have you tried debugging the service execution step by step? We don't have your code, and our .Net Process code seems to be deprecated by Microsoft (as it worked correctly 4 or 5 years ago). If you could make us a small sample - then we could try debugging this from our side.
Also, have you tried playing with service types? From what I remember - I tried different combination before this worked.
What I see in my sample is that the account type for the service process installer should be LocalSystem.

Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Hi Alex,

It's not practical to give you the actual code due to the large number of dependencies and configuration that would be required but I have put together a sample that I believe is a fair simulation of what we're doing. The sample contains a service that just sits in a loop and attempts to spawn PrintPDF.EXE every few seconds to generate a PDF file. If you run the PrintPDF program standalone then the PDF file is created as expected. When run from the service, the PrintPDF process runs and pdfsaver6,exe is launched but no PDF is created. I've tried ticking the allow interactive services box (I also have the registry key set to allow interactive services) and also logging the service on as my windows account but still no PDF is created. I'd appreciate it if you could have a look and see if you can see the problem.

The source code expects you to have a E:\Temp folder that will contain SampleService.exe, PrintPDF.exe and will be used for the PDF output.

Thanks,
Steve Thresher.
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Hi Alex,

Could you please confirm if this is something you can work with?

Thanks,
Steve Thresher.
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Any idea how much longer it will be until this issue can be progressed?
Sasha - Tracker Dev Team
User
Posts: 5522
Joined: Fri Nov 21, 2014 8:27 am
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Sasha - Tracker Dev Team »

Hello Steve,

The files that you've attached contained a licence key.
There were 2 downloads already when I downloaded that file.
Please do NOT post your license information on the forums, or we will be forced to deactivate it!

I removed that attachment - please update it and reupload again so when the appropriate developer can look at this, he can download that project.

Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

Hello Steve,

I had to block the license key - as the project was downloaded twice before we noticed that you have included the key.
Please do contact us via e-mail for further instructions on how to get this sorted!

Regards,
Stefan
User avatar
John - Tracker Supp
Site Admin
Posts: 5219
Joined: Tue Jun 29, 2004 10:34 am
Location: United Kingdom
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by John - Tracker Supp »

Steve,

One important restriction you should be aware of and this is made clear in our license and other area's of our documentation and web site - you cannot create an application using our SDK's which essentially provides general PDF creation for users - essentially bypassing the need for an end user license that would normally be required.

From our SDK licenses:
2. END USER APPLICATION
The Application Software developed by Licensee must be an "End User Application." An "end user application" is a specific application program that is
licensed to a person or firm for business or personal use and not with a view toward redistributing the application or any part of the application, and may be either an application that is used by Licensee internally, or an application that is commercially distributed to end users for their use. A user of an end user application may not modify or redistribute the application and may not copy it (other than for archival purposes). Licensee’s license agreement
covering the Application Software must contain restrictions prohibiting redistribution, modification and copying of the Application Software. The license rights hereunder do not apply to the development and deployment of software products such as Printer Drivers, ActiveX controls, plug-ins, authoring tools, development toolkits, compilers, operating systems and also software products where a primary or significant function is to generate or view ‘PDF’ format files (as defined by ISO Standards body’) and other file formats from 3rd party software applications not developed by the licensee,
indirectly or otherwise, - such as Microsoft’s ‘Office’ suite and component applications other than for the purpose of creating and then storing such files within a structured application for the archival and management of documents, that is developed by the licensee and any other software not
falling within the definition of an end user application. If Licensee wishes to develop a product outside the scope of this license, Licensee should contact TRACKER’S OEM Sales department to see if a special license is available.
So it may well be you are encountering intended consequences of prohibited product use.

Please describe what your application is intended to achieve and what 3rd party applications your product is interacting with so we can advise further as we will not assist you in bypassing such limitations if our use is not approved.

Thank you.
If posting files to this forum - you must archive the files to a ZIP, RAR or 7z file or they will not be uploaded - thank you.

Best regards
Tracker Support
http://www.tracker-software.com
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

I believe the two downloads were both myself. The first from checking what I had uploaded could be downloaded and the second from me checking the count increased when I downloaded the project as I was trying to work out if anyone had bothered to look at it yet.

The sample has now been modified to remove the licence key.

Our software makes use of the PDF creation to produce documentation such as Quotations, Order Acknowledgements, Invoices and, in this instance, Delivery Notes. There is no generic PDF creation capability we are simply trying to automate the process of creating the documentation at set intervals rather than requiring users to execute the programs manually.

Can we please move onto finding a solution as we already have one customer refusing to sign off on a project due to this functionality not working.

Regards,
Steve Thresher.
Attachments
PrintPDF.7z
(2.23 MiB) Downloaded 193 times
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

Thanks Steve,

Please do get in touch with us via e-mail so that I can replace your license key (the one that is already blocked will stay that way).
As for the actual enquiry - I will see if one of my colleagues from the dev team can assist you with that!

Cheers,
Stefan
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Could you please tell me who to email regarding a replacement licence key?
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

Hello Steve,

Please write to sales@pdf-xchange.com with a link back to this forum topic and your order number or part of your license key - and I will issue you a replacement.

Regards,
Stefan
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Radi has now provided me with a new licence key. Any thoughts on when the problem can be progressed.
User avatar
Tracker Supp-Stefan
Site Admin
Posts: 17765
Joined: Mon Jan 12, 2009 8:07 am
Location: London
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Tracker Supp-Stefan »

Hi Steve,

Yes we've sorted out the licensing, as for the actual problem I have passed it to the developers in our team that can help you with that, and hope they will have some further news for you shortly!

Regards,
Stefan
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Hi,

It's been a few weeks, has any progress been made yet?

Thanks,
Steve,
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Could someone please give me an update on how this issue is progressing?
User avatar
Ivan - Tracker Software
Site Admin
Posts: 3549
Joined: Thu Jul 08, 2004 10:36 pm
Location: Vancouver Island - Canada
Contact:

Re: PDF's not Created When the Application is Launched from a Service

Post by Ivan - Tracker Software »

Just tested your sample on my machine, and found two issues that cause the problem with printing:

1. When you finish spooling document, you have to wait for the document being generated before releasing Printer object. The simplest way to do that is to call

Code: Select all

 pPrinter6->WaitForPrintEvent(PXC6::event_DocumentSaved, 5000); 
after DeleteDC(hDC). 5000 is a timeout in milliseconds, you can use a different value.

2. The second issue is the driver (pdfSaver issue) - when Save.Path is not specified Path.File is ignored. By default Save.Path is resolved to MyDocument, which is not available under service. I will fix that issue in V7, but V6 is not supported anymore. But there is simple 'fix' for that - specify any path to the Save.Path, say, E:\Temp, as it will not be used until Save.File contains full file name.

HTH
Tracker Software (Project Director)

When attaching files to any message - please ensure they are archived and posted as a .ZIP, .RAR or .7z format - or they will not be posted - thanks.
steve.thresher
User
Posts: 81
Joined: Wed Aug 26, 2009 8:42 am

Re: PDF's not Created When the Application is Launched from a Service

Post by steve.thresher »

Hi Ivan,

Thankyou very much for the workaround. I've modified the production code and I'm now getting documents produced when the program is launched by a service.

Kind Regards,
Steve.
Post Reply