Thread [Win32::Printer::Enum] - Windows Standarddrucker (9 answers)
Opened by Kean at 2012-08-29 14:49

FIFO
 2012-08-30 11:34
#161486 #161486
User since
2005-06-01
469 Artikel
BenutzerIn

user image
Eher so:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use warnings;
use strict;

use Win32::API;

my $winspool_path = 'c:\\windows\system\winspool.drv';
my $printer_name_size = 256;
my $printer_name = " " x $printer_name_size;   # Speicher allozieren

my $GetDefaultPrinter = Win32::API->new($winspool_path, 'GetDefaultPrinter', 'PP', 'I');

$GetDefaultPrinter->Call($printer_name, $printer_name_size);

print $printer_name;


Der String in $printer_name ist \0-terminiert, musst also ggf. chop verwenden. den String kürzen: $printer_name =~ s/\x00.*//;.

Editiert von FIFO: Stringkürzung präzisiert
Last edited: 2012-08-30 14:57:00 +0200 (CEST)
Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it? -- Brian Kernighan: "The Elements of Programming Style"

View full thread [Win32::Printer::Enum] - Windows Standarddrucker