![]() |
FREE Download | Purchase pdfMachine |
•Can I install multiple pdfMachine printers with different options?
•When using Citrix / Windows Terminal Server / Remote sessions, can I initiate a
pdfMachine print and have the client side send email / save / view ?
•How do I get pdfMachine to work under Windows 2003 Server?
•On Windows 98, how do I fix "External Window Handler Error?"
•How can I uninstall pdfMachine manually?
•Can I customize the pdfMachine install?
•How do I edit the bgsconf.ini file in the pdfMachine.exe installer?
•How do I create an installer for users without administrative privileges?
•How do I create an unattended installer for users without administrative
privileges?
•pdfMachine installation error message 126
This is achievable but setup is a bit tricky...
1. Download the pdfMachine.exe self-extracting zip file.
2. Unzip pdfMachine.exe into a temporary directory using a zip utility. eg Winzip, or 7zip.
3. If your system does not have pdfMachine installed, run bgssetup.exe (from the
temporary directory) ie: bgssetup.exe -printer="pdfMachine printer 2"
4. Now you have created a printer called "pdfMachine printer 2" with its own
configuration options.
5. Run: bgssetup.exe -addPort -printer="pdfMachine printer 3"
6. This will create a printer called "pdfMachine printer 3" with its own
configuration options, and so on...
NOTE: This setup is only necessary if you dont want the default behaviour where the server side sends email / saves / views.
This uses a partially implemented feature of pdfMachine that requires some manual setup.
Server machine setup:
Setup pdfMachine to print to a pdf file and update a text file in directory(s) on the server.
1. Install pdfMachine
2. On the "Next Action tab", set the "Next Action" to "execute command line" and
the "Command Line" to "C:\touchx.bat"
3. Create a batch file (e.g. C:\touchx.bat) which updates a file (e.g. c:\tmp\x.txt) in a server directory that clients can access (e.g. "echo blah > c:\tmp\x.txt")
4. On the General tab, set "Save Filename action" to "Use the default dir and
default save filename" and set the "default directory" to a server directory that the clients can access (e.g "c:\tmp"), and set the
"default filename" to any filename (e.g "x.pdf")
Now when a print is done on the server machine, no user interface is
presented, the pdf file c:\tmp\x.pdf is generated, and then the file c:\tmp\x.txt is updated.
Client side setup:
Setup pdfMachine to check the server file periodically. The client side must have a drive mapped which allows access to the directory that the server puts the files into (e.g. x.pdf and x.txt above).
1. Install pdfMachine
2. On the general tab, set "Save Filename action" to "Use the default dir and
default save filename" and set the "default directory" and "default filename"
to the client side mapping of the path required to access the pdf file (e.g. x.pdf above) on the server.
3. Create a new registry string value called "checkfile" under the key "HKEY_CURRENT_USER\Software\pdfMachine\Broadgun
pdfMachine". The last part of the path is the printer name which in
this example is the default printer name Broadgun pdfMachine. Set the
string registry value to the client side filepath mapping required to access the
file on the server. (e.g. //server/tmp/x.txt)
4. Either reboot the client PC or stop and restart bgsmsnd.exe (bgsmsnd.exe is usually
in windows\system32\spool\drivers\w32x86\2)
Now when the server file c:\tmp\x.txt is updated, the client bgsmsnd.exe notices (the checkfile
registry val does this) and will load the pdf file on the client.
NOTE: You can choose to have the file automatically emailed by the client by
setting the client option "Next Action" to "Launch default email client". If you
want encryption with this option, enable it on the server, not the client.
By default Windows 2003 disables the installation of 'kernel mode' printer drivers, of which pdfMachine is.
You can override this setting by editing the Group Policy Object on the
local machine - not the domain controller.
To do this:
1. Open Group Policy editor.
2. To open Group Policy so that you can edit the local Group Policy object, click Start, click Run, type gpedit.msc, and then press ENTER.
3.
Under Local Computer Policy, double-click Computer Configuration.
4.
Double-click Administrative Templates, and then double-click Printers.
5.
Right-click "Disallow installation of printers using kernel mode drivers", and then click Properties.
6.
On the Setting tab, click Disabled, and then click OK.
On Windows 98, how do I fix "External Window Handler Error?”
This is an occasional problem on Windows 98 related to a known problem with
acrobat reader. More … http://www.adobe.com/support/techdocs/2a086.htm
A solution is currently in development, in the interim try:
• Rebooting your machine. Next time you logon things may be ok.
• Opening the acrobat PDF reader (with no document open) prior to printing to
pdfMachine.
Exit all applications you are not using.
1. Run bgsetup.exe–uninstall e.g. from the start menu button, select run, then
enter: C:\WINDOWS\system32\spool\drivers\w32x86\2\bgssetup.exe –uninstall.
2. You may need to change the above path to match your system. If this works,
you have successfully uninstalled.
Otherwise try; (be careful, don’t go editing the registry unless you know what
you are doing...)
1. Start a command line session e.g cmd.exe
2. Type “net stop spooler”
3. Type “regedit”
4. From within regedit - delete the following registry keys (and all subkeys):
HKEY_CURRENT_USER\Software\pdfMachine
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Print\Monitors\PDF Port Monitor
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Printers\BroadGun pdfMachine
5. From the command line, type “net start spooler”
6. Re-attempt the install.
Exit all applications you are not using
1. Run bgsetup.exe–uninstall e.g. from the start menu button, select run, then
enter:
bgssetup.exe –uninstall If this succeeds, you have successfully uninstalled.
Otherwise try; (be careful, don’t go editing the registry unless you know what
you are doing...)
1. Start regedit.exe and delete the following keys and sub keys:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Print\Monitors\PDF Port Monitor
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Printers\BroadGun pdfMachine
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Print\Environments\Windows NT x86\Drivers\Version-2\BroadGun pdfMachine
2. Re-attempt the install.
When bgssetup.exe runs, its loads some configuration information from the bgsconf.ini file.
Install options in the bgsconf,ini file are:
| LANG | Can currently be EN(English), DE(German), FR(French), ES(Spanish) |
| startMenuName | Controls the name on the start menu |
| printer | Name of the printer (defaults to BroadGun pdfMachine) |
| quiet | Set to 1 to install without user interaction |
| isShared | Set to 1 to share the printer on the network. |
| installOfficeAddin | Set to 1 to install the Microsoft Office addin toolbar |
| installerStartBgProcess | Set to 0 to prevent bgsmsnd.exe being started during install. See more info here |
pdfMachine.exe is a self extracting zip file that automatically runs bgssetup.exe after extracting. You can extract all the files from pdfMachine.exe manually, edit the bgsconf.ini and then recreate the pdfMachine.exe.
You can achieve the above however you like, but here is what we do:
- Open pdfMachine.exe in a zip program. eg Winzip, or 7zip.
- Extract the contents to directory of your choosing.
- Edit the bgsconf.ini
- Create a zip file of the new contents.
eg in the directory contains the extracted and edited files
zip ..\pdfmachine.zip *.*
- Create a new pdfMachine.exe using winzipse
eg in the directory containing the zip file:
winzipse has a limited command line capability so requires these parameters be
put in a text file
create winzipse.txt containing pdfmachine.zip -st pdfMachine.exe -setup -i
pdfMachn.ico -t setupdlg.txt -win32 -le -C .\bgssetup.exe
then run winzipse @winzipse.txt
You now have a new pdfMachine.exe
To install printers, the installer needs administrative privileges.
This can be done using the runas command.
runas /user:Admin pdfMachine.exe
Then enter the Admin users password.
(runas does not allow the password to be
specified as a command line parameter - see below for further information)
Unfortunately, the standard pdfMachine.exe generates an error because it
starts a background process running as the Admin user.
To prevent this, you need to set installerStartBgProcess=0 in the bgsconf.ini
file.
bgsmsnd.exe must be running (as the user) for the user to successfully print
to pdfMachine.
When the runas command completes, you should then run the bgsmsnd.exe as the
normal user.
(alternatively bgsmsnd.exe will be started automatically next time the user logs
on)
To use runas without having to manually enter the admin password, requires that you create a script to enter the password for you.
There are a few common ways to do this, some more secure than others:
scriptit - Microsoft's utility for building install scripts.
autoit - A free scripting utility - can produce compiled scripts as standalone executables.
Runas Professional - Can take password on command line but can also produce standalone exes with the password encrypted internally.
Some users have reported an obscure "error 126" when installing
pdfMachine. We have had a report that this can occur as a
result of some other program incorrectly setting a registry type.
The fix was:
1. Open regedit.exe
2. Navigate to :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment
3. Rename "Path" value to "Path.1" or some other temporary value.
(Right click on value, select rename)
4. Create a new value called "Path" of type "Expandable String
Value".
To do this, right click in regedit window, select "New-> Expandable
String Value"
5. Copy the value of "Path.1" to "Path".
6. You may have to reboot for the new setting to take effect.