Schrift
[thread]12558[/thread]

[Win32] Laufwerksbuchstaben auslesen



<< >> 3 Einträge, 1 Seite
renee
 2008-09-30 00:22
#115011 #115011
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Hallo,

ist es möglich, mit Perl die existierenden Laufwerksbuchstaben bei Windows auszulesen? In der Registry habe ich unter HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices zwar Laufwerksbuchstaben gefunden, allerdings werden dort auch Laufwerke aufgelistet, die es zur Zeit nicht gibt.

Renee
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
MatthiasW
 2008-09-30 01:01
#115013 #115013
User since
2008-01-27
367 Artikel
BenutzerIn
[default_avatar]
Hier ein Beispielskript, das die Laufwerkskennbuchstaben auflistet:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/perl

use strict;
use warnings;

use Win32::API;

my $function = Win32::API->new( 'kernel32', 'GetLogicalDriveStringsA', 'NP', 'N' );

my $drivestr = ' 'x1024;
my $ret = $function->Call( 1024, $drivestr );

print "'$_'\n" for split "\0", substr( $drivestr, 0, $ret );
<STDIN>;

__END__

In $ret steht die Anzahl an Bytes, die benötigt wurden um die Laufwerkskennbuchstaben abzuspeichern und in $drivestr stehen alle Laufwerkskennbuchstaben mit \0 separiert.

MfG
perl -E'*==*",s;;%ENV=~m,..$,,$&+42;e,$==f;$"++for+ab..an;@"=qw,u t,,print+chr;sub f{split}say"@{=} me"'
renee
 2008-09-30 01:07
#115014 #115014
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Super, danke!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
<< >> 3 Einträge, 1 Seite



View all threads created 2008-09-30 00:22.