Thread Neue Registry mit alter vergleichen (27 answers)
Opened by s8jascho at 2012-08-17 09:25

topeg
 2012-08-21 11:48
#161169 #161169
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Wenn du es so benutzt?
Code (perl): (dl )
1
2
my $entries = $Registry->{"HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Terminal Server/"};
my $copy = my_clone($entries);


versuch es mal so:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
sub my_clone
{
  my $ref=shift;
  my $ret;

  my $type=ref($ref);

  if( $type eq 'ARRAY' )
  {
    $ret=[];
    for(@$ref)
    { push(@$ret,my_clone($_)); }
  }
  elsif( $type eq 'HASH' )
  {
    $ret={};
    while(my ($k,$v)=each(%$ref) )
    { $ret->{$k}=my_clone($v); }
  }
  elsif($type eq 'Win32::TieRegistry')
  {
    $ret={};
    while(my ($k,$v)=each(%$ref) )
    { $ret->{$k}=my_clone($v); }
  }
  elsif($type)
  { die "Can't clone $type\n"; }
  else
  { $ret="$ref"; } # <= um auch die letzten versteckten Objekte zu eleminieren

  return $ret;
}

Das macht aus dem Objekt ein Hash.

View full thread Neue Registry mit alter vergleichen