NAME
Win32::EnumPrinters - Enumerate printers in Windows.
SYNOPSIS
use Win32::EnumPrinters qw(EnumPrinters);
my @printers = EnumPrinters();
DESCRIPTION
This module wraps Win32 EnumPrinters and some related functions.
Output C data structures are converted to Perl hashes. The names used for their slots are as in C but with any type declaration or structure name prefixes (i.e p for pointer, dw for DWORD, dm for DEVMODE, etc.) removed.
CONSTANTS
Any constant accepted by the supported functions in input parameters or included in output data can be imported by the module. For instance:
use Win32::EnumPrinters qw(PRINTER_ATTRIBUTE_RAW_ONLY);
The constants have both an integer and a string value (in a similar fashion to $!). The string value is the C constant name lower-cased and with any common prefix removed. For instance, PRINTER_ATTRIBUTE_QUEUED is both queued and 1.
Enumeration values returned from the supported functions follow the same rule.
The following tags can also be used at import time to pick sets of constants:
attribute => PRINTER_ATTRIBUTE_*
dmbin => DMBIN_*
dmcollate => DMCOLLATE_*
dmcolor => DMCOLOR_*
dmdfo => DMDFO_*
dmdisplayflags => DM_*
dmdither => DMDITHER_*
dmdo => DMDO_*
dmdup => DMDUP_*
dmfield => DM_*
dmicm => DMICM_*
dmicmethod => DMICMMETHOD_*
dmmedia => DMMEDIA_*
dmnup => DMNUP_*
dmpaper => DMPAPER_*
dmres => DMRES_*
dmtt => DMTT_*
enum => PRINTER_ENUM_*
formflag => FORM_*
status => PRINTER_STATUS_*
stringtype => STRING_*
FUNCTIONS
The following functions can be imported from the module:
- @printers = EnumPrinters($flags, $name, $level)
-
See EnumPrinters.
- $name = GetDefaultPrinter()
-
See GetDefaultPrinter.
- @forms = EnumForms($printer_name, $level)
-
See EnumForms.
SEE ALSO
Win32::Printer and Win32::Printer::Enum provide similar functionality, but they are not thin wrappers around the C/C++ functions.
AUTHOR
Salvador Fandiño, <sfandino@yahoo.com>
COPYRIGHT AND LICENSE
Copyright (C) 2017 by Qindel Formación y Servicios SL
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.24.1 or, at your option, any later version of Perl 5 you may have available.