Thread Instanzen löschen (2 answers)
Opened by Reen at 2006-12-13 20:36

Reen
 2006-12-13 22:35
#72534 #72534
User since
2006-12-01
11 Artikel
BenutzerIn
[default_avatar]
Also das ist immer noch das Prog, dass die Registry durchsuchen soll. Das funzt auch alles soweit. Das einzigste Prob ist halt, wenn ich jetzt einen Schlüssel gelöscht habe, soll zur Auswahl stehen, ob eine neue Suche starten soll oder weiter gesucht werden soll.
Im aktuellen Code, bricht er nach der Neueingabe ab, weil ich mir halt denke, dass die alten Instanzen daran schuld sind.
Beim Weitersuchen ist noch das Prob, dass er jetzt irgendwie nochma alle Schlüssel anzeigt, die zum Suchschema passen. Probiers einfach mal aus. Dann weist du was ich genau meine.

Danke
Reen

Code: (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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
use Win32::TieRegistry;

&neu;

sub neu
{
print "Registryschluessel finden und loeschen!\n";
print "Suchbegriff: ";
$eingabe = <STDIN>;
&start ($eingabe);

sub start
{ $regroot = $Registry -> Open ("CConfig/",{Delimiter=>"/"});
$regpath= $regroot -> Path;

&func($regroot);

sub func
{ my $regkey = shift;
my ($key, $dir);

foreach $key (keys %$regkey)
{ chomp($key);
if ($key =~ /(\/)$/)
{ chomp($key);

if ($key =~ /^$eingabe?/ig)

{ $PathSubKey = $regkey -> Path;

print $PathSubKey, "[$key]", "\n";

print "Schluessel (l)oeschen, (w)eitersuchen? [l/w] ";

my $choice1 = <STDIN>;


print "\n";

if ($choice1 =~ /l/i)


{ $inhalt = $regkey -> Open ("$key");


print "[$key]", "\n";


foreach $inh (keys %$inhalt)


{ printf " Key: %15s Wert: %s\n", $inh, $inhalt->{$inh}; }


print "Folgende Schlüssel und Werte werden gelöscht! [j/n] ";


my $choice2 = <STDIN>;


if ($choice2 =~ /j/i)


{&nbsp
; my $del1 = delete $regkey -> {"$key"};



print "Suche (f)ortsetzen, (n)eue Suche, (b)eenden? ";



my $choice3 = <STDIN>;



if ($choice3 =~ /f/i)



{ &start;
}



if ($choice3 =~ /n/i)



{ &neu; &n
bsp; }



if ($chioce3 =~ /b/i)



{ exit;
}


}


}




}

else

{ $dir = $regkey -> Open ("$key"); # In neuen Schlüssel wechseln
$path = $dir -> Path;
&func($dir);
}

}
}
}
}
}

View full thread Instanzen löschen