Deutsch
Forum

Registry noch benötigte Einträge nicht löschen

 
- Seite 1 -



Torsten
Rümker
Hi,

Folgendes ist mein Problem:
Ich habe mehrere Programme erstellt, die sich in der Registry unter HKEY_Current_UserSoftware einen Haupteintrag teilen.
Also:
HKEY_Current_UserSoftwareTRSoftwareProgramm1
HKEY_Current_UserSoftwareTRSoftwareProgramm2
usw.

Wenn ich jetzt ein Programm deinstalliere soll es natürlich seine Spuren aus der Registry mit entfernen.
Nur, wie prüfen ich sicher ab, das noch ein weiterer Schlüssel unter TRSoftware vorhanden ist, damit ich den Eintrag nur Lösche wenn es auch wirklich möglich/nötig ist?

Ich habe schon verschiedenes ausprobiert (z.b. ein Eintrag in dem vermerkt ist wie viele Programme Einträge haben) aber ich habe noch nichts hinbekommen, was sicher funktioniert.

Für jeden Hinweis dankbar
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
30.09.2006  
 



 
- Seite 1 -



Michael
Wodrich
Hab 2 Erweiterungen vorgenommen:
KompilierenMarkierenSeparieren
!
Tvinsert 0,"HKEY_CLASSES_ROOT",$0010
@Sendmessage(Treeview&,$1100,0,Tv_insert#)
Tvinsert 0,"HKEY_CURRENT_USER",$0010
@Sendmessage(Treeview&,$1100,0,Tv_insert#)
Tvinsert 0,"HKEY_LOCAL_MACHINE",$0010
@Sendmessage(Treeview&,$1100,0,Tv_insert#)
Tvinsert 0,"HKEY_USERS",$0010
@Sendmessage(Treeview&,$1100,0,Tv_insert#)

und
KompilierenMarkierenSeparieren
!

If Reg_root$="HKEY_USERS"

    Let Reg_error&=@Regopenkeyex($80000003,@Addr(Reg_key$),0,$20019,@Addr(Reg_handle&))

Elseif Reg_root$="HKEY_CURRENT_USER"

    Let Reg_error&=@Regopenkeyex($80000001,@Addr(Reg_key$),0,$20019,@Addr(Reg_handle&))

Elseif Reg_root$="HKEY_CLASSES_ROOT"

    Let Reg_error&=@Regopenkeyex($80000000,@Addr(Reg_key$),0,$20019,@Addr(Reg_handle&))

Elseif Reg_root$="HKEY_LOCAL_MACHINE"

    Let Reg_error&=@Regopenkeyex($80000002,@Addr(Reg_key$),0,$20019,@Addr(Reg_handle&))

Else

    Let Reg_error&=2

Endif


Kann ich im Moment gut gebrauchen, danke.

Bei Classes_Root kanns ein Weilchen dauern. Bei mir zählt er über 8000 Unterschlüssel.

schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
30.09.2006  
 



Ob man die braucht, ist Ansichtssache...
 
30.09.2006  
 




Torsten
Rümker
Jau, damit müßte es gehen.

Sogar sehr einfach, über die Anzahl der Unterschlüssel.
Wenn Anzahl Unterschlüssel = 0 dann wech mit TRSoftware

Danke dir.

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
30.09.2006  
 




Michael
Wodrich
Mir war der local_user wichtig, da dort unter software die meisten programme verewigt sind.
 
Programmieren, das spannendste Detektivspiel der Welt.
30.09.2006  
 



Bin MInimalist - ist unter HKEY_USERS mit dem String SID des jeweiligen Users auslesbar...
 
30.09.2006  
 




Torsten
Rümker
So hab jetzt keine Geduld mehr.
APIs find ich echt anstrengend.
Ich mach für heute schluß und fahre meine Schwester besuchen.

Morgen denk ich noch mal drüber nach wie ich das für mich umgemodelt bekomme

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
30.09.2006  
 




Torsten
Rümker
[quote:418f29a759=Andreas Hötker]Bin MInimalist - ist unter HKEY_USERS mit dem String SID des jeweiligen Users auslesbar...[/quote:418f29a759]
Ähöm, für einen Minimalisten schreibst du aber ganz schön aufwändige Beispielcodes

Aber mal im Ernst.

Könntest du mir mal ein Minimal-Beispiel erstellen, mit dem ich die Ausgabe deines Quellcodes für einen bestimmten Schlüssel (welcher ist mir egal) bekomme?
Ehrlich gesagt raucht mir der Kopf, da ich
a) Was APIs angeht irgendwie begriffsstutzig bin
und
b) Da ich es noch nie wirklich für irgendwas gebrauchen konnte ich auch so meine Probleme mit dem Treeview habe

Ok, das sind ehrlich gesagt nicht wirklich die besten Gründe, aber ich geh lieber Schritt für Schritt vor wenn ich was neues lerne.
Also erstmal das was ich akut gebrauchen könnte und später dann die Extras

Wäre echt nett

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
30.09.2006  
 




Jörg
Sellmeyer
Hast Du Prfellow? Da gibts in den Vorlagen schöne Beispiele von Uwe Pascal Niemeyer.
Du kannst es Dir von [...]  herunterladen.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
01.10.2006  
 



 
- Seite 2 -


So OK:
KompilierenMarkierenSeparieren
Konstanten festlegen
Def &HKEY_CLASSES_ROOT $80000000
Def &HKEY_CURRENT_USER $80000001
Def &HKEY_LOCAL_MACHINE $80000002
DEF &HKEY_USERS $80000003
APIs deklarieren
Def @Regopenkeyex(5) !"ADVAPI32","RegOpenKeyExA" Schlüssel öffnen
Def @Regqueryinfokey(12) !"ADVAPI32","RegQueryInfoKeyA"
Def @Regclosekey(1) !"ADVAPI32","RegCloseKey" Schlüssel schließen
Declare Subkeys&,Key$,Handle&
Declare Fehler&
LET KEY$="SoftwareMicrosoftWindowsCurrentVersion" diesen Schlüssel öffnen
Let Fehler&=@Regopenkeyex(&HKEY_CURRENT_USER,@ADDR(KEY$),0,$1,@ADDR(HANDLE&)) Schlüssel öffnen und Handle holen
Let Fehler&=@Regqueryinfokey(Handle&,0,0,0,@Addr(Subkeys&),0,0,0,0,0,0,0) ... den Rest benötigst du nicht => kann also 0 sein...
@Regclosekey(Handle&) Schlüssel schließen
Addstring "Anzahl der Unterschlüssel="+@Str$(Subkeys&)
@Editbox("Rückgaben",1)
 
01.10.2006  
 




Torsten
Rümker
Ok, ich glaube du hast mein unverständnis halbwegs beseitigt, RegQueryInfoKey wird also mit den ganzen variablen nicht unbedingt etwas übergeben, sondern es landen auch Ergebnisse drin.
Also z.B. in Subkeys&.
Der Weg war mir neu, und erklärt einige Codesnipsel die ich bisher nicht verstanden habe.

Also, danke für die Kurzversion, die erklärt mir so einiges!

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
05.10.2006  
 



[quote:66cb0b93ad=Torsten Rümker]Ok, ich glaube du hast mein unverständnis halbwegs beseitigt, RegQueryInfoKey wird also mit den ganzen variablen nicht unbedingt etwas übergeben, sondern es landen auch Ergebnisse drin.
Also z.B. in Subkeys&.
[/quote:66cb0b93ad]
Das ist bei vielen APIs so.
 
05.10.2006  
 




Torsten
Rümker
[quote:10c8e47fce=Andreas Hötker]Das ist bei vielen APIs so.[/quote:10c8e47fce]
Jep hab ich jetzt verstanden, aber daran erkennt man mal wieder das es zum Verständnis eines Problemes wichtig ist sozusagen aus der richtigen Richtung zu denken.

Naja, deswegen ja meine Signatur

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
06.10.2006  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

3.860 Betrachtungen

Unbenanntvor 0 min.

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie