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. |
Win32, x64.
See Also
Functions: |
L_PrnLockPrinter, L_PrnUnlockPrinter, L_PrnUninstallPrinter, L_PrnIsLeadtoolsPrinter |
Topics: |
LEADTOOLS Virtual Printer: Installing and Uninstalling LEADTOOLS Virtual Printer Drivers |
|
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_LTPRINTERTEX_API L_VOID PrinterExample() { /* Unlock Printer Driver support. Note that this is a sample key, which will not work in your toolkit. */ L_UnlockSupport(L_SUPPORT_PRINT_DRIVER, TEXT("TestKey")); 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= NULL; PrnInfo.pszPortName= NULL; PrnInfo.pszProductName = TEXT("LEADTOOLS Printer"); PrnInfo.pszRegistryKey= TEXT("LEADTOOLS Printer Inc."); PrnInfo.pszRootDir= TEXT("C:\\Program Files\\LEAD Technologies\\LEADTOOLS 17\\Bin\\Common\\PrinterDriver"); PrnInfo.pszHelpFile= TEXT("C:\\Program Files\\LEAD Technologies\\LEADTOOLS_Printer.hlp"); PrnInfo.pszPassword= TEXT("TEST Password"); PrnInfo.pszUrl= TEXT("http://www.LEADTOOLSPRINTERDRIVER.com"); PrnInfo.pszPrinterExe= TEXT("C:\\Program Files\\LEAD Technologies\\AnyApplicationExe"); L_INT nRet = L_PrnInstallPrinter(&PrnInfo, 0); if(nRet == SUCCESS) { 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 && 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) { L_PrnGetPrinterSpecifications(PrnInfo.pszPrinterName, &outSpecific); } L_BOOL bLocked = FALSE; nRet =L_PrnIsPrinterLocked(PrnInfo.pszPrinterName, &bLocked); if(nRet == SUCCESS) { if(bLocked) { L_PrnUnlockPrinter(PrnInfo.pszPrinterName,PrnInfo.pszPassword); } else { L_PrnLockPrinter(PrnInfo.pszPrinterName,PrnInfo.pszPassword); } } } } }