AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Alle User auslesen

Ein Thema von Martin K · begonnen am 15. Jun 2006 · letzter Beitrag vom 11. Jul 2006
Antwort Antwort
Seite 3 von 3     123   
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#21

Re: Alle User auslesen

  Alt 21. Jun 2006, 15:54
Moin Martin,

wenn keine Reste verbleiben sollen, dann wäre es wohl besser keine userspezifischen Daten zu speichern.
Und ich kann kein Problem darin erkennen, dass userspezifische Daten erhalten bleiben können.
Dann kann sich jemand zumindest seine Konfiguration auf ein anderes System retten.
Zumindest sollte bei der Deinstallation die Option für den Erhalt der Daten gegeben sein.
Wenn die Daten im Profil gespeichert werden (wo sie ja auch hingehören), dürfte es ja kein Problem sein, durch alle Profile auf dem Rechner durchzugehen, und zu prüfen, ob sich dort Daten des Programmes befinden.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#22

Re: Alle User auslesen

  Alt 21. Jun 2006, 16:14
Zitat von Christian Seehase:
dürfte es ja kein Problem sein, durch alle Profile auf dem Rechner durchzugehen
Darüber diskutieren wir seit anfang des threads und sind zu dem ergebnis gekommen, dass das "as designed" nicht möglich ist.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#23

Re: Alle User auslesen

  Alt 21. Jun 2006, 17:06
Moin Lukas,

Zitat von DGL-luke:
... und sind zu dem ergebnis gekommen, dass das "as designed" nicht möglich ist.
ich kann nur im Moment kein Problem darin sehen mittels FindFirst/FindNext/FindClose durch "Dokumente und Einstellungen" zu gehen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#24

Re: Alle User auslesen

  Alt 22. Jun 2006, 17:36
Zitat von Christian Seehase:
ich kann nur im Moment kein Problem darin sehen mittels FindFirst/FindNext/FindClose durch "Dokumente und Einstellungen" zu gehen.
Naja, das ist doch nun wirklich keine Lösung.

Angenommen ein User hat in seinen Eigenen Dateien (die sind auch in einem Unterordner von Dokumente und Einstellungen) eine INI-Datei, die rein zufällig genauso heißt wie die meines Programms, dann wird die auch gelöscht ...

Nein, es sollte schon irgendwie mit den AppData abhängig von den ausgelesenen Usernamen (Luckies Code) gehen...
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#25

Re: Alle User auslesen

  Alt 11. Jul 2006, 14:19
Hi,

ich habe mich jetzt nochmal näher mit der Registry beschäftigt und v. a. mit der Frage, wie man spezielle Ordner-Pfade von anderen Benutzern (also nicht All Users und nicht der aktuelle User) bekommt.
Natürlich geht es hierbei um den Hauptschlüssel HKEY_USERS:
Unter <Nummer (mit Schleife durchgehen)>\Software\Microsoft\Windows\CurrentVer sion\Explorer und dem Eintrag Logon User Name kann der Benutzername und unter dem Unterschlüssel \Shell Folders können die Pfade der speziellen Ordner herausgefunden werden.

Meine erste Frage:
Kann dies verallgemeinern?
Funktioniert das auch bei älteren Windows-Versionen?

Der Eintrag Logon User Name ist allerdings nicht bei allen Schlüsseln vorhenden, bei folgenden ist er nicht zu finden:
S-1-5-18 //Mischung aus aktueller User, Network Service, WINDOWS
S-1-5-19 //LocalService
S-1-5-20 //NetworkService

Meine zweite Frage:
Kann man die auch verallgemeinern?
(Also dass S-1-5-19 für LocalService und S-1-5-20 für NetworkService steht)?
Auch ältere Win-Versionen?

Meine dritte Frage:
Fangen die Schlüssel für alle anderen Benutzer mit S-1-5-21... an?
Ist das allgemein so?
Auch ältere Win-Versionen?

Dann noch was:
Zu jedem Schlüssel gibt es noch einen Schlüssel der mit der selben Nummer beginnt und dann ein ..._Classes dahinter hat.
Diese enthalten jedoch keine Shell Folders.

Ach ja, und der Schlüssel .DEFAULT enthält dasselbe wie der Schlüssel S-1-5-18.


Wäre jetzt nett, wenn mir jemand bei meinen Fragen helfen könnte oder ist das auslesen der Shell Folders über die Registry evtl. nicht so der gute Weg ?
- Danke schonmal! -
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#26

Re: Alle User auslesen

  Alt 11. Jul 2006, 14:38
Benutzerspezifische Ordner bekommst du mit
SHGetSpecialFolderLocation() .
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#27

Re: Alle User auslesen

  Alt 11. Jul 2006, 14:46
Zitat von ste_ett:
Benutzerspezifische Ordner bekommst du mit
SHGetSpecialFolderLocation() .
Ja ich weiß, aber hier geht es um die benutzerspezifischen Ordner von anderen Benutzern, nicht unbedingt die des aktuellen Benutzers
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#28

Re: Alle User auslesen

  Alt 11. Jul 2006, 16:32
Hab noch mal genauer (auf einem Rechner, auf dem mehrere Benutzer sind) in die Registry geschaut und festgestellt:
Unter HKEY_USERS sind doch nicht alle Benutzer zu finden.

...sind doch nur: aktueller User, LocalService und NetworkService.

Frage:
Kann man denn überhaupt nicht über die Registry an die Einträge anderer User dran kommen ?
Hat denn jeder User seine "eigene Registry" ?

Wäre nett, wenn mir einer die einzelnen Schlüssel unter HKU genauer erklären könnte.
Zitat von Martin K:
S-1-5-19 //LocalService
S-1-5-20 //NetworkService

Meine zweite Frage:
Kann man die auch verallgemeinern?
(Also dass S-1-5-19 für LocalService und S-1-5-20 für NetworkService steht)?
Auch ältere Win-Versionen?
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#29

Re: Alle User auslesen

  Alt 11. Jul 2006, 18:00
Moin Martin,

Zitat von Martin K:
Nein, es sollte schon irgendwie mit den AppData abhängig von den ausgelesenen Usernamen (Luckies Code) gehen...
Ich habe nicht gesagt, dass Du einfach jede Datei löschen sollst, die so heisst, wie die Konfigurationsdatei Deines Programmes

Du kannst doch einfach durch "Dokumente und Einstellungen" gehen, baust Dir damit eine Liste der möglichen "echten" User auf (also ohne "All Users", "Default User" usw.), und gehst dann durch, ob sich dort ein entsprechender Pfad befindet, wie ihn Dein Programm angelegt hat.

Wenn sich das Programm nur userspezifisch installieren lässt, kannst Du fast schon das Filtern weglassen.
Es ist allerdings nicht unüblich bei der Grundkonfiguration, zumindest von Firmenrechnern, alle Programme als lokaler Administrator zu installieren, und zum Schluss dann das Administratorprofil in das Defaultuser-Profil zu kopieren, damit jeder Anwender bei der Anmeldung die Grundkonfiguration zur Verfügung hat. Bei entsprechend erstellten MSI-Installationen kann man sich das zwar sparen, aber die sind nun auch nicht so zahlreich

Trotzdem:
Ich halte nichts davon einfach solche Dateien zu löschen.

Übrigens hilft Dir "Logon User Name" nicht unbedingt, da der Anmeldename nicht als Profilname auftauchen muss.
Befindet sich der Rechner in einer Domäne, und wird ein Account umbenannt, so ändert sich nicht der Name im Profil, da der Profilpfad durch die User-SID zugeordnet wird, und nicht durch den Anmeldenamen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Martin K
Martin K

Registriert seit: 20. Okt 2005
919 Beiträge
 
Turbo Delphi für Win32
 
#30

Re: Alle User auslesen

  Alt 11. Jul 2006, 18:35
Danke erstmal für Deine Antwort.
Aber das mit dem Durchsuchen überhaupt gefällt mir nicht so gut.

Ich glaube mit dem auslesen der Shell Folders aus HKU komme ich auch nicht weiter.
Oder gibt es irgendwie die Möglichkeit, spezielle Ordner anderer Benutzer über die Registry zu erhalten ?
Kann man überhaupt auf Einträge anderer Benutzer in der Registry zugreifen???
Mit den Menschen ist es wie mit Computern -
es gibt Nullen und Einsen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz