LEADTOOLS Raster Imaging C DLL Help > Function References > 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
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
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_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 18\\Bin\\Common"); PrnInfo.pszHelpFile= TEXT("C:\\LEADTOOLS 18\\Help\\LEADTOOLS_Printer.hlp"); PrnInfo.pszPassword= TEXT("TEST Password"); PrnInfo.pszUrl= TEXT("http://www.LEADTOOLSPRINTERDRIVER.com"); PrnInfo.pszPrinterExe= TEXT("C:\\LEADTOOLS 18\\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; }