Chapter 4 - Miscellaneous options

The options below are included in the [Options] and [Images] sections of the PRINTFIL.INI file. Some of them are automatically managed by Printfil, some others can also be setup by the Configuration -> Standard Printfil's dialog, tabs: "PDF & E-mail" and "Options".

ArchiveRoot ( archiving path )

By this entry PRINTFIL can automatically archive a copy of each captured print job and/or print the same job to multiple printers simultaneously. Please see Chapter 11 for a detailed explanation.

ArchiveDelDays ( number of days: 0 = no )

When PRINTFIL starts, it can automatically delete the print jobs archived in ArchiveRoot which are older than the specified number of days. For example, by setting up ArchiveDelDays=365, the archiving folder will contain only the print jobs of the last year. If this option = 0, the archived jobs will never be deleted. Please see Chapter 11 for a detailed explanation.

Img1 ( background image file )

This parameter, in the [Images] section, contains the background file name selected at Configuration -> Standard -> Options. Please see Chapter 6 for a detailed explanation.

RemLastChr ( n = no. of characters to remove )

Sometimes, legacy character-mode applications puts some extra characters at the end of the print jobs (for example chr(12) + chr(13): EJECT + CR) because otherwise some laser printers did not eject the last page.
This normally produce an extra page on the print job containing only the spurious characters (a blank page).

Despite of this effect could appair also by sending the ascii stream directly to some laser printers, sometimes it is undesired.
The correct solution should be removing the extra characters, but if you cannot change the source print job, you can use this entry to remove them automatically.

For example: by setting RemLastChr=2 Printfil will remove the last 2 characters on the print job, if they are the only 2 on the last page.

You can also set RemLastChr to a larger value. For example, if you set RemLastChr=5 and the last page has only 2 characters, they will be removed anyway (but only the last 2). If RemLastChr is set to 1 and the last page has 2 characters, they will be both printed.

If this entry is missing, or set to 0 (zero), no characters will be removed.

WARNING: Printfil 4.x versions were accepting also the .T. and .F. values for the RemLastChr entry. This values are still supported for compatibility, but they are now deprecated and will be removed in a future Printfil version.

ManCopies ( 0, 1, 2 )

There are some Windows printer drivers which does not correctly manage the number of copies; neither by setting it by the standard windows "Choose Printer" dialog, nor by Printfil directly (either through the Printfil.CFG file or by the Escape sequences embedded into the print jobs).

Should you experience this problem with your own printer driver, please try to search the manufacter's website for an updated version of it first, and leave ManCopies=0.

If the updated printer driver still doesn't solve the problem, then you can setup ManCopies=1 to make Printfil managing the copies internally, instead of through the Windows printer driver. In this case Printfil creates a print job made of "n" pages * "c" copies (just like the Windows printer driver does).

If instead you'll setup ManCopies=2 Printfil will still manage the copies internally, but in this case it will create a print job made of "n" * "c" pages into a single copy.
This is particularly useful if you wish to merge different graphical background images to different copies of the same print job by the optional CFG file.

For example, when ManCopies=2, a single invoice can be printed in 2 copies with 2 different backgrounds (customer copy / accounting copy); something frequent in the DOS age, when printing on carbon copy preprinted stationery by dot-matrix printers.
Please find how to merge background images to textual print jobs on Chapter 6 of this manual.

WARNING: Previous Printfil versions were accepting also the .T. and .F. values for the this entry. This values are still supported for compatibility, where .T.=1 and .F.=0, but they are now deprecated and will be removed in a future Printfil version.


This entry controls the security settings when creating a PDF file via GhostScript. Please see Chapter 9.

TypePDF ( P, A )

P = PDF , A = PDF/A


This entry contains the path which has been last used when creating a PDF file through the "Printfil" virtual printer and the integrated preview. It's used to be proposed at the next PDF creation, and it's automatically managed by Printfil.

EMailClient ( empty, MAPI, SMTP )

To send out E-Mail messages (either your print jobs as PDF files or Support Requests), Printfil can use:
  1. Microsoft Outlook
  2. A standard MAPI e-mail client (Microsoft Mail, Mozilla Thunderbird, Outlook Express, ...)
  3. An SMTP server

When EMailClient is empty (the default value), Printfil gives an higher priority to Microsoft Outlook than to other MAPI clients eventually installed on your machine. So, if Outlook is installed, Printfil will invoke it (1), otherwise it will invoke the default MAPI mail client (2).

If Microsoft Outlook is installed on your machine, but you are used to use another MAPI client (like Microsoft Outlook Express or Mozilla Thunderbird), then you can force Printfil using it (2) by setting EMailClient=MAPI (or by selecting this option Printfil's standard Configuration dialog, PDF & E-Mail tab).

If you don't use neither Outlook nor a standard MAPI client, or however if you don't want to use any mail client program, then you can have Printfil using any standard SMTP server (3), by setting up EMailClient as follows:

EMailClient=SMTP|Sender|Smtp Server|Smtp Port|Authentication|Username|Password|SSL

The first part (SMTP) is fixed. All fields are separated by a pipe ("|" - Ascii-124) 

Sender is your own e-mail address. For example: John Doe <> or simply It's needed to receive replies.

Smtp Server can be specify as an IP address ( ) or by it's canonical name ( ). These details are provided by your own ISP (Internet Service Provider) and are the same you'll have to insert in any mail client program to allow it sending out e-mail messages.

Smtp Port is optional. The default port for an SMTP server is 25, but some providers are used to use a different port (Google's for example does use port no. 465, and SSL authentication - please see below)

Authentication is optional. If your mail server requires authentication you can setup this parameter=.T. (dot-T-dot)

Username is required only if your mail server requires authentication. Most often this is your full e-mail address (including the domain), unless your ISP provided you different login credentials.

Password is required only if your mail server requires authentication. If you manually edit the Printfil.ini file, you can specify it as a plain text. If the configuration is setup through the Printfil's graphical configuration dialog(s), the password is automatically encrypted in the Printfil.ini file.

SSL authentication is required by some providers (Google's for example). To enable it you've to setup this parameter=.T. (dot-T-dot). If it's missing, or .F., SSL is disabled.
PLEASE NOTE: SSL authentication is not available in Windows 98/ME, you need Windows 2000 or newer to enable it.


WARNING: Unlike options (1) and (2) above, by sending mail through an SMTP server (3) you'll not automatically obtain a copy of the sent mail in the "Sent Mail" folder of your own mail client (no mail client is used at all in this case).
If you want to keep copies of all the automatically sent messages, you'll have to add your own e-mail address to the recipients, so that you'll receive them too, in your own mail client program.
If you prefer, you can add it in Bcc: so that the recipient(s) will not know it has been sent to you too.


This parameter allows you delaying Printfil's startup of some seconds. This might be useful to ensure that other programs in the "Start -> All Programs -> Startup" folder or complex logon scripts will complete before Printfil starts.

PFPrinter ( Virtual printer's name. Default = Printfil )

This entry contains the name of the virtual printer used by Printfil to capture DOS/Win LPT ports and/or to create/e-mail a PDF file out of the captured print jobs. Please see Chapter 8: The Printfil Virtual Printer for further info.

The default virtual printer's name is Printfil, but in some cases you may want to use a different name; for example if you want to capture multiple LPT ports on the same machine, simultaneously.

The virtual printer's name must be short (max 8 characters) and cannot include spaces.

LPT_Timeout( Slow DOS jobs )

If you've a DOS program which doesn't spool the print jobs until elapses a long time or it gets closed, then you can modify this parameter on the configuration of your Windows machine to speed it up.

Please find more info about this Windows parameter in the article: How to make DOS programs printing faster in Windows

Modifying this parameter simply in the Printfil.ini file does not change the Windows configuration. You must click the LPT_Timeout button in the Configuration -> Standard -> Options Printfil's dialog so that Printfil modifies the related Windows registry entries.

This parameter should be modified only by Windows users who are members of the "Administrators" group.

DefOemCP ( Default OEM Code Page )

This entry contains the name of the default OEM Code Page Windows will use when performing the conversion of legacy (OEM) characters to their Windows (Ansi) equivalents (please see AnsiConv in the previous chapter)

Printfil automatically finds and store the default value in this entry. You should never modify it manually with a text editor. This value is used by Printfil to show you which is the default codepage when/if you'll change it (please see NewOemCP below).

NewOemCP ( New OEM Code Page )

This entry contains the name of the OEM Code Page you want Windows will use to convert legacy (OEM) characters to their Windows (Ansi) equivalents instead of the default one. You may want to change the Windows OEM Codepage only in case your own legacy program is setup to use a different codepage than the Windows default OEM one (please see DefOemCp above) making accented letters and other national characters not correctly printed.

Modifying this parameter simply in the Printfil.ini file does not change the Windows configuration. You must click the OEM Code Page: xxx button in the Configuration -> Standard Printfil's dialog (where xxx is the codepage actually selected) so that Printfil modifies the related Windows registry entries.

This parameter should be modified only by Windows users who are members of the "Administrators" group.

If you'll setup Windows with a wrong OEM codepage, you can always restore the default value, by reselecting the DefOemCp.

ShowManX.X ( .T. = true , .F. = false - X.X stands for the Printfil's version)

If this entry is .T. or it is missing, and Printfil is run in evaluation mode, at next Printfil startup this manual and the guided configuration will be automatically opened, then ShowManX.X will be put = .F.
This is the standard setting when Printfil is run for the first time or when running a newer version in evaluation mode.

ShowPop ( .T. = true , .F. = false )

When used in evaluation mode, Printfil periodically show a popup message remainding to register the software. By Setting this entry to .F., the messages will no more be shown during the first 20 days of evaluation.

The entry is automatically managed by Printfil itself, which, after showing you the popup message, will ask you if you want to show it again or not.

SupportEmail ( .F. = false )

By default, if PRINTFIL execution terminates abnormally, at next startup it shows an automatically generated e-mail to be sent to the Support Team.

The e-mail DOES NOT CONTAIN ANY PERSONAL DATA, but an Error Report and the Printfil configuration on the PC.

The user can always choose whether to send the e-mail or to close the window.

Setting this entry to .F., this Auto Notification Error feature can be disabled, as well as the "E-mail Support" menu entry.

If you want to re-enable it later, do not set this entry to .T., but remove the entire line from PRINTFIL.INI instead.

AutoUpdate ( .F. = false )

PRINTFIL can automatically connect to our web site to see if an update is available.

By default, the check is done only once at each PRINTFIL startup, after the user connects to the internet. Printfil will NOT start an internet connection itself to do the check.

If the installed Printfil version is not the latest one, the user can be informed, either by a message box or by an internet web page automatically opened to ask the user to download the update.

Setting this entry to .F., the Auto Update check will be disabled.

In this case, the only way to check if an update is available is by clicking the "Search for updates" entry in the Printfil menu.

If you want to re-enable it later, do not set this entry to .T., but remove the entire line from PRINTFIL.INI instead.

LogFile ( .T. = true , .F. = false )

Normally disabled (.F.), if you set it = .T. , a PRINTFIL.LOG file will be created in the Printfil installation directory. This file contains the data exchanged between Printfil and our web server by the AutoUpdate procedure and the data exchanged with the SMTP server when using the "Test" button at Configuration -> Standard -> PDF & E-Mail -> SMTP Settings (only if SSL authentication is NOT enabled). 

  28 Jan 2016  
  New Printfil 5.20
What's new
Print from DOS to USB printer now! Download free PrintFil trial!
  Click here to see the most Frequently Asked Questions  
  see alo ...  
  File In Mail: Automatically send out files via email