Custom Virtual Printer – Technical Questions and Answers


Home       Download       Pricing       FAQ       Manual       Tutorials       Known issues       News

 

  1. What types of EMF files are generated?
  2. Can the driver handle portrait and landscape in the same document?
  3. Does generated EMF image file contain printed graphics objects?
  4. What programming tools are needed to build drivers from a source code?
  5. What programming tools are needed to build your own MSI-package?
  6. Does EMF driver support different color modes?
  7. Can the printer be used to print from the Terminal Services session or Remote Desktop connection?
  8. I found an error in the generated PDF document. What should I do?
  9. Do we need Adobe Acrobat or 3rd party software for creating a PDF with an EMF virtual printer?
  10. How can we integrate an EMF virtual printer with our client application? Do you have samples?
  11. How to share a virtual printer?
  12. How can I install a virtual printer silently?
  13. How can I specify installation directory for msi-package?
  14. How can I change temporary folder for a virtual printer?
  15. How can I uninstall a virtual printer?
  16. Can I install two or more virtual printers on a single server?
  17. How to test your software? Where can I download it?
  18. What are the limitations of the demo version?
  19. We need the ability to open our software when printing to the virtual printer and thus displaying the printed document in our program.
  20. How to turn off spool file pooling?

 

  1. What types of EMF files are generated?

    Generated EMF is operating system specific: EMF 1.0 in Win9x, NT EMF 1.003 in NT4, NT EMF 1.008 in Win2k/XP. Generated EMF files are intended for local converting/viewing only, not for using on another computers because they contain environment-specific fonts and graphics. To preserve fonts and graphics, you can use PDF format as your output file format. PDF is supported by our virtual printer technology as well.
     

  2. Can the driver handle portrait and landscape in the same document?

    Yes. Client application can get information about document orientation, resolution and title from the virtual driver.
     

  3. Does generated EMF image file contain printed graphics objects?

    Yes. Such objects are embedded in EMF in the device-independent format with color information provided by the source application.
     

  4. What programming tools are needed to build drivers from a source code?

    Microsoft Visual Studio 2010 and WDK for Windows 7.
     

  5. What programming tools are needed to build your own MSI-package?

    WiX toolset http://wixtoolset.org
     

  6. Does EMF driver support different color modes?

    EMF is independent from display color modes. All embedded graphics are stored in the device-independent format. All necessary color transformations must be performed by the client application.
     

  7. Can the printer be used for printing from the Terminal Services session or Remote Desktop connection?

    The virtual printer is compatible with Terminal Services and Remote Desktop Connection.
     

  8. I found an error in the generated PDF document. What should I do?

    Please send us the generated PDF file, its source EMF file and the original document (if possible). We will fix the bug as soon as possible.
     

  9. Do we need Adobe Acrobat or 3rd party software for creating a PDF with an EMF virtual printer?

    No, you don’t. We use our own library, PDF Creator Pilot, for creating PDF files.
     

  10. How can we integrate an EMF virtual printer with our client application? Do you have samples?

    Integration of your application with a virtual printer is an easy process. We have several samples. The full package, which you will receive after buying the printer, includes the samples as well.
     

  11. How to share a virtual printer?

    When you share the printer on Windows Vista and later you need to uncheck “Render print jobs on client computers” at the ‘Sharing’ tab of printer properties dialog.

    When you share the printer on XP, use the following procedure to enable the “Always render print jobs on the server group policy on each client machine”:

    1. From the Start menu, select Run (on Windows Vista Run can be found in the Accessories menu) and type gpedit.msc;

    2. In the group policy object editor, open Computer Configuration, then Administrative Templates, and then Printers;

    3. Select Always render print jobs on the server and click Enabled;

    4. Make print spooler service restart.

    See more details on how to share virtual printer…
     

  12. How can I install a virtual printer silently?

    You can install MSI-package with using “msiexec” tool with “/quiet” key “msiexec /i product.msi /quiet”. Also you should have an administrator privilege rights.
     

  13. How can I specify installation directory for msi-package?

    You can set an “INSTALLFOLDER” property for “msiexec” tool “msiexec /i product.msi INSTALLFOLDER=path_to_install”.
     

  14. How can I change temporary folder for a virtual printer?

    By default the virtual printer uses User temporary directory from “TEMP” or “TMP” environment variables for temporary files. You can change this behaviour by setting “VPD_TEMP” environment variable to a required temporary directory.
     

  15. How can I uninstall a virtual printer?

    You can uninstall the virtual printer via “Start” or “Programs and Features” menu. If you have an error during the uninstallation process you can try to uninstall it with using “Fixit” tool from Microsoft http://support.microsoft.com/mats/Program_Install_and_Uninstall.
     

  16. Can I install two or more virtual printers on a single server?

    Yes, you can if they have a different names.
     

  17. How to test your software? Where can I download it?

    You can download demo builds from our web-site.
     

  18. What are the limitations of the demo version?

    The demo version places notification messages inside the generated documents.
     

  19. We need the ability to open our software when printing to the virtual printer and thus displaying the printed document in our program. Does the EMF virtual printer have any feature that makes it possible to launch an .exe following the virtual printer receiving a print job?

    Yes, you should specify your application in printer properties tool (“Application” tab) or setup it via registry settings directly “{HKLM, HKCU}\Software\Two Pilots Demo Printer\Application\Postconverter”. For more information please check here.
     

  20. How to turn off spool file pooling?

    On Windows NT/2000, find the files by name xxxxx.spl where xxxxx was the JobID returned by the EnumJobs API.

    However, XP and 2003 create spool files named FPnnnnn.spl where nnnnn is no longer the JobID.

    This is the side effect of file pooling. You can “turn off” Spool File Pooling by keeping printed jobs or specify a different spool directory. The workaround to this is as below:

    To Turn Off Spool File Pooling on a Per Printer Queue-basis:

    1. Click “Start”, click “Run”, type “regedit” in the “Open” box, and then click “OK”.
    2. Locate the following registry subkey, where <printername> is the name of your printer: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\<printername>
    3. In the right pane, right-click “SpoolDirectory”, and then click “Modify”.
    4. In the “Value data” box, type the location where you want the spool files to be stored. For example, type c:\windows\system32\spool\printers as the default location.
    5. Quit Registry Editor.
    6. Restart the “Print Spooler” service.

    All new jobs will be of the form XXXXX.SPL and XXXXX.SHD and will be numbered consistently with their JobIDs.

    To Turn Off Spool File Pooling for All Printers:

    (Note: This method only works on Windows 2003 Server. This method does not work for Windows XP.)
    1. Click “Start”, click “Run”, type “regedit” in the “Open box”, and then click “OK”.
    2. Locate the following registry subkey: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print
    3. On the “Edit” menu, point to “New”, and then click “DWORD Value”.
    4. In the “New Value #1” box, type “DisableServerFilePooling”, and then press “ENTER”.
    5. Right-click “DisableServerFilePooling”, and then click “Modify”.
    6. In the Value data box, type 1 to turn off spool file pooling, and then click “OK”.
    7. Quit Registry Editor.
    8. Restart the “Print Spooler” service.

    All new jobs will be of the form XXXXX.SPL and XXXXX.SHD and will be numbered consistently with their JobIDs.
     

 


Home       Download       Pricing       FAQ       Manual       Tutorials       Known issues       News