L_PrnInstallPrinter

#include "Ltprinter.h"

L_LTPRINTER_API L_INT EXT_FUNCTION L_PrnInstallPrinter(pPrnInfo, uFlags)

PRNPRINTERINFO * pPrnInfo;

pointer to a structure

L_UINT32 uFlags;

LEADTOOLS Virtual Printer Driver type

Installs the LEADTOOLS Virtual Printer Driver to the system.

Parameter

Description

pPrnInfo

Pointer to a structure that contains the LEADTOOLS Virtual Printer Driver information to be used when installing the printer.

uFlags

Reserved for future use, use zero as the value of this parameter.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

To uninstall the LEADTOOLS Virtual Printer Driver from the system, call the L_PrnUninstallPrinter function.

Required DLLs and Libraries

LTPRINTER

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your LEADTOOLS Virtual Printer Driver Application.

Platforms

Win32, x64.

See Also

Functions:

L_PrnLockPrinter, L_PrnUnlockPrinter, L_PrnUninstallPrinter, L_PrnIsLeadtoolsPrinter, L_PrnGetUserDefaultPrinterSpecifications

Topics:

LEADTOOLS Virtual Printer: Installing and Uninstalling LEADTOOLS Virtual Printer Drivers

 

Working with the LEADTOOLS Virtual Printer Driver

Example

L_VOID PreparePrinterSpecifications( PRNPRINTERSPECIFICATIONS * pSpecific ) 
{ 
   pSpecific->uStructSize = sizeof( PRNPRINTERSPECIFICATIONS ); 
   /* Custom Papers IDs starts from "DMPAPER_USER + 200" */ 
   pSpecific->uPaperID = DMPAPER_USER + 200; 
   strcpy_s( pSpecific->szPaperSizeName, "Custom Paper Name" ); 
   pSpecific->dPaperHeight = 11; 
   pSpecific->dPaperWidth = 8; 
   pSpecific->bDimensionsInInches = TRUE; 
   pSpecific->bPortraitOrient = TRUE; 
   strcpy_s( pSpecific->szMarginsPrinter, "Margins Printer Name" ); 
   pSpecific->nPrintQuality = 300; 
   pSpecific->nYResolution = 300; 
} 
L_INT PrinterExample() 
{ 
   PRNPRINTERINFO PrnInfo; 
   memset(&PrnInfo, 0, sizeof(PRNPRINTERINFO)); 
   PrnInfo.uStructSize=sizeof(PRNPRINTERINFO); 
   PrnInfo.pszPrinterName= TEXT("TEST LEADTOOLS Printer"); 
   PrnInfo.pszDriverName= TEXT("TEST LEADTOOLS Printer DRIVER"); 
   PrnInfo.pszMonitorName= TEXT("TEST LEADTOOLS Printer"); 
   PrnInfo.pszPortName= TEXT("TEST LEADTOOLS Printer"); 
   PrnInfo.pszProductName = TEXT("LEADTOOLS Printer"); 
   PrnInfo.pszRegistryKey= TEXT("LEADTOOLS Printer Inc."); 
   PrnInfo.pszRootDir= TEXT("C:\\LEADTOOLS 19\\Bin\\Common"); 
   PrnInfo.pszHelpFile= TEXT("C:\\LEADTOOLS 19\\Help\\LEADTOOLS_Printer.hlp"); 
   PrnInfo.pszPassword= TEXT("TEST Password"); 
   PrnInfo.pszUrl= TEXT("http://www.LEADTOOLSPRINTERDRIVER.com"); 
   PrnInfo.pszPrinterExe= TEXT("C:\\LEADTOOLS 19\\Bin\\AnyApplicationExe"); 
   L_INT nRet = L_PrnInstallPrinter(&PrnInfo, 0); 
   if(nRet != SUCCESS) 
   { 
      return nRet; 
   } 
   MessageBox(0,TEXT("Install New Printer Completed Successfully"),TEXT("TEST LEADTOOLS Printer"),0); 
   L_BOOL bLEADTOOLSPrinter=FALSE; 
   nRet = L_PrnIsLeadtoolsPrinter(PrnInfo.pszPrinterName,&bLEADTOOLSPrinter); 
   if(nRet != SUCCESS) 
   { 
      return nRet; 
   } 
   if(bLEADTOOLSPrinter==TRUE) 
   { 
      /* Set LEADTOOLS Printer Specifications */ 
      PRNPRINTERSPECIFICATIONS Specific; 
      PRNPRINTERSPECIFICATIONS outSpecific; 
      ZeroMemory( & Specific, sizeof( PRNPRINTERSPECIFICATIONS ) ); 
      ZeroMemory( & outSpecific, sizeof( PRNPRINTERSPECIFICATIONS ) ); 
      PreparePrinterSpecifications(&Specific); 
      nRet = L_PrnSetPrinterSpecifications(PrnInfo.pszPrinterName, &Specific); 
      if(nRet != SUCCESS) 
      { 
         return nRet; 
      } 
      L_PrnGetPrinterSpecifications(PrnInfo.pszPrinterName, &outSpecific); 
#ifdef LTV175_CONFIG 
      PRNPRINTERSPECIFICATIONS defaultSpecific; 
      PRNPRINTERSPECIFICATIONS defaultoutSpecific; 
      ZeroMemory( & defaultSpecific, sizeof( PRNPRINTERSPECIFICATIONS ) ); 
      ZeroMemory( & defaultoutSpecific, sizeof( PRNPRINTERSPECIFICATIONS ) ); 
      PreparePrinterSpecifications(&defaultSpecific); 
      nRet = L_PrnSetUserDefaultPrinterSpecifications(PrnInfo.pszPrinterName, &defaultSpecific); 
      if(nRet != SUCCESS) 
      { 
         return nRet; 
      } 
      L_PrnGetUserDefaultPrinterSpecifications(PrnInfo.pszPrinterName, &defaultoutSpecific); 
#endif 
      L_BOOL bLocked = FALSE; 
      nRet =L_PrnIsPrinterLocked(PrnInfo.pszPrinterName, &bLocked); 
      if(nRet != SUCCESS) 
      { 
         return nRet; 
      } 
      if(bLocked) 
      { 
         L_PrnUnlockPrinter(PrnInfo.pszPrinterName,PrnInfo.pszPassword); 
      } 
      else 
      { 
         L_PrnLockPrinter(PrnInfo.pszPrinterName,PrnInfo.pszPassword); 
      } 
   } 
   return SUCCESS; 
} 

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS Raster Imaging C API Help