Jump to content

Saving PDF with COM from PDFCreator

Recommended Posts


Sorry to ask this, I'm sure this is a pretty low level question, but can't figure it out by my own.

I found plenty of threads, and I know that there is UDFs for this (my request to download Scite Config to try and implement it was denied...)

I'm automating a program, to test it. I have basicly everything set by now (thanks to not small part to this forum) or what I miss I already know how to handle.

My only remaining thing I want to achive is to communicate with PDFCreator with COM, not using its UI.

In a specific part of the automatization the PDFCreator pops up (it saves/print the bills if neceserry) what I would like to achive is to tell the PDFCreator to rename and save the document to a folder. I know this should be done with Obj functions, but I don't know where can I find the "commands".

I have read ptrex PDFCreatur UDF, but still I just don't get it. Right now I think I need to "create" an ObjCreate to the poping up window as a variable, and then communicate what I want it to do with it somehow. I don't know the commands, and not even sure what to use other then ObjCreate.

Thank you for your help!

Link to comment
Share on other sites

Did you try the automatic saving in PDFCreator ? You can configure a PDFCreator printer (profile) witch generates PDF in silent mode in the specified folder, with a specified file name. Also, you can configure it to execute a script after the PDF conversion.



Link to comment
Share on other sites

That could work, at least I thought about that, but the problem is that the software should be able to run on different computers. Do you suggest, that I should try to set the automatic saving every time someone starts the program? I don't see anyother way since someone could be using this on his computer for something else.

Then I should reset it to his original settings once he exit my program. The idea itself would be good, but I may just miss on how it should be implemented.

Link to comment
Share on other sites

I don't get the edit function yet so I just post again, I meant by "someone could be using this on his computer for something else." that someone may have set up the automatic PDFsave for something else.

But even If I ignore it, how can I realiable make my program, to set the autosave of PDF to somewhere when a new update can completly change the UI.

Link to comment
Share on other sites

Thank you, but I have found that (have it open right now :) )

I understand the with endwith loop thanks to the help file, but where I'm lost is from where Master Pretex knew the commands? .c0ption? I'm not sure whats happening inside here, but I try to explain what I see:

He sets autosave on (i guess) and tell it to use autosave directory, then set that directory to, I don't know that part, $fso = ObjectCreate("scripting.filysystemobject"), or the.GetParentFoldername part, I get the AutosaveFilename, and the format, but not much after that. 

Also In the help file, I assumed that these "commands" would be like .UseAutosave , thats just confuse me a bit more

.cOption("UseAutosave") = 1
.cOption("UseAutosaveDirectory") = 1
.cOption("AutosaveDirectory") = $fso.GetParentFolderName(@ScriptFullPath)
.cOption("AutosaveFilename") = "Testpage - PDFCreator"
.cOption("AutosaveFormat") = 0 ; 0=PDF, 1=PNG, 2=JPG, 3=BMP, 4=PCX, 5=TIFF, 6=PS, 7= EPS, 8=ASCII
$DefaultPrinter = .cDefaultprinter
.cDefaultprinter = "PDFCreator"
.cPrinterStop = 0
Link to comment
Share on other sites

  • 1 month later...


Check here:


Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *


My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...