Skip to content

mba2811/AmagnoVirtualPrinter

 
 

Repository files navigation

AmagnoVirtualPrinter

Test changes, to test release action

Description

The AmagnoVirtualPrinter is an interface which forwards any print job given from a specified printer, to a specified application that processes the 'print job'.

There are two ways of using the AmagnoVirtualPrinter:

  1. If you just want to install the driver build the project in release mode, navigate to the folder VirtualPrinter.WixSharpinstaller and execute the created .msi file. After the installation, a new printer, with the name set in Defaults.cs, can be located under Printer & Scanner in the Microsoft® Windows settings.
  2. To debug the AmagnoVirtualPrinter, follow step one. After the installation, go to Windows Services and stop AmagnoPrinterService. In Visual Studio, select AmagnoVirtualPrinter.Agent.Console as startup project and run in debug mode. To start a test print (and debug the solution) start PowerShell or cmd and navigate to the root folder of the repository. Go to Files and run .\setupdrv.exe test, which will create a test page and send it to the virtual printer. Or just print any document you want to.

Table of Contents

  1. Installation
    1. From MSI
    2. From Source
  2. Usage
    1. Configure
    2. Debugging
  3. License

Installation

From MSI

If you want to use the official installer, you can download it here or use the latest release in GitHub. Make sure to run the installer with extended rights. After installation, you may need to configure the AmagnoVirtualPrinter. After installation, a new printer with the name set in Defaults.cs can be located under Printer & Scanner in the Microsoft® Windows settings.

From Source

Dependencies

To compile the installer, please make sure you Wix Toolset is installed. The WixSharp library is used to define the package in AmagnoVirtualPrinter.WixSharpInstaller.

Create MSI package

To install the driver from source, build the project in release mode. When the build is run successfully, open up powershell and navigate to C:\[Git]\AmagnoVirtualPrinter\Files. Then run the AmagnoPrinterInstaller.exe "/MSBUILD:C:\[Git]\AmagnoVirtualPrinter\Installer\AmagnoVirtualPrinter.WixSharpInstaller" "/p:C:\[Git]\AmagnoVirtualPrinter\" where /p: is the output directory for the msi and working directory for the WixSharp project. Make sure the given working directory contains a Files folder with all binaries needed for AmagnoVirtualPrinter. This command will use WixSharp to create the msi package right next to the AmagnoPrinterInstaller.exe called AmagnoPrinterInstaller.msi.

Alternatively use create_msi.ps1 which automates the building step above.

Usage

Configure

Make sure Ghostscript is installed on your machine.

While installing, several registry entries are inserted into Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\AmagnoVirtualPrinter\. The most important ones are those under the key Application

  • Pre-Converter: Contains the exe to be executed (pre convert process) and the arg to be processed by the application (for example: C:\Program Files\MyApp.exe PRINT).
  • Post-Converter: Contains the exe to be executed (post convert process) and the args to be processed by the application (for example: C:\Program Files\MyApp.exe PRINTCOMPLETE).

The Converter key defines the settings which are needed for the convert process, e.g. server port (9101 by default) and output directory for the converted prints, which can be processed by the application. If the value is set to an empty string, the default temp path will be used (e.g. C:\temp\PrinterOuput).

Debugging

To debug the AmagnoVirtualPrinter, run the msi. After installation, go to Windows Services and stop the AmagnoPrinterService. In your IDE, select the AmagnoVirtualPrinter.Agent.Console as startup project and run in debug mode. To start a test print (and debug the solution) start PowerShell or cmd and navigate to the root folder of the repository. Go to Files and run .\setupdrv.exe test, which will create a test page and send it to the virtual printer. Or just print any document you want to.

License

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 99.9%
  • PowerShell 0.1%