| |
 | Online-Kurs: Grundlagen des 3D-Druck-Designs für Industrieingenieure , ein Kurs
|
Autor
|
Thema: Zugriff auf Registry Keys (1223 mal gelesen)
|
Axel.Strasser Ehrenmitglied V.I.P. h.c. Selbstständig im Bereich PLM/CAx

 Beiträge: 4107 Registriert: 12.03.2001 Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!
|
erstellt am: 30. Jan. 2006 18:45 <-- editieren / zitieren --> Unities abgeben:         
Wir haben zur Zeit Probleme mit einer Installation bzw Deinstallation einer Software. Bei einer Deinstallation ist ein Registry-Schlüssel stehengeblieben, aber in der Art, dass man ihn nicht löschen oder umbenennen oder die Protection/Owner ändern kann. Eine anderes Programm versucht jetzt aber darauf zuzugreifen und kann nicht starten Wie kann man einen Schlüssel löschen den man nicht "weiter bearbeiten" kann ?? Gibt es da noch Tools oder einen speziellen Trick ? Axel [Diese Nachricht wurde von Axel.Strasser am 30. Jan. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Proxy Moderator Stateless-DHCP v6-Paketfragmentierer
    
 Beiträge: 1629 Registriert: 13.11.2003 Tastaturen, Mäuse, Pladden, Monitore, ..., einige AutoCADs 200x & SWX 2kX
|
erstellt am: 30. Jan. 2006 19:17 <-- editieren / zitieren --> Unities abgeben:          Nur für Axel.Strasser
 Ok verstecken kein Problem .. aber schützen ... auch mit vollen Adminrechten ? ... ansonsten ASCII-Editor und viel Spass. Zitat: Hidden Registry Keys?A subtle but significant difference between the Win32 API and the Native API (see Inside the Native API for more information on this largely undocumented interface) is the way that names are described. In the Win32 API strings are interpreted as NULL-terminated ANSI (8-bit) or wide character (16-bit) strings. In the Native API names are counted Unicode (16-bit) strings. While this distinction is usually not important, it leaves open an interesting situation: there is a class of names that can be referenced using the Native API, but that cannot be described using the Win32 API. How is this possible? The answer is that a name which is a counted Unicode string can explicitly include NULL characters (0) as part of the name. For example, "Key\0". To include the NULL at the end the length of the Unicode string is specified as 4. There is absolutely no way to specify this name using the Win32 API since if "Key\0" is passed as a name, the API will determine that the name is "Key" (3 characters in length) because the "\0" indicates the end of the name. When a key (or any other object with a name such as a named Event, Semaphore or Mutex) is created with such a name any applications using the Win32 API will be unable to open the name, even though they might seem to see it. The program below, RegHide(source code is included), illustrates this point. It creates a key called "HKEY_LOCAL_MACHINE\Software\Sysinternals\Can't touch me!\0" using the Native API, and inside this key it creates a value. Then the program pauses to give you an opportunity to see if you can view the value using any Registry editor you have handy (Regedit, Regedt32 or a third-party Registry editor). Because Regedit and Regedt32 (and likely an third party Registry editor) use the Win32 API, they will see the key listed as a child of Sysinternals, but when you try to open the key you'll get an error. This is because the Registry editor will try to open "Can't touch me!" without the trailing NULL (which is interpreted as the end of the string) and won't find this name. After you've verified this exit the program and this special key will be deleted.
------------------ MfG Proxy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Axel.Strasser Ehrenmitglied V.I.P. h.c. Selbstständig im Bereich PLM/CAx

 Beiträge: 4107 Registriert: 12.03.2001 Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!
|
erstellt am: 30. Jan. 2006 19:55 <-- editieren / zitieren --> Unities abgeben:         
Hab mal versucht mit regmon das Problem aufzuzeigen: 754 10.14928785 EXCEL.EXE:1804 OpenKey HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-21-73586283-2139871995-839522115-12039\Components\4D082B2ABF020274997F040CF9CB1EA0 c000009a 755 10.14935851 EXCEL.EXE:1804 OpenKey HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-21-73586283-2139871995-839522115-12039\Components\4D082B2ABF020274997F040CF9CB1EA0 c000009a Excel versucht da an den Components Key zu kommen aber ab dem Components Schlüssel ist Schluss, ich habe keinen Zugriff mehr und keine Möglichkeit das zu ändern (auch mit Admin Rechten nicht). Axel [Diese Nachricht wurde von Axel.Strasser am 30. Jan. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gle Mitglied Konstrukteur
 
 Beiträge: 195 Registriert: 05.12.2004
|
erstellt am: 30. Jan. 2006 21:11 <-- editieren / zitieren --> Unities abgeben:          Nur für Axel.Strasser
|
Axel.Strasser Ehrenmitglied V.I.P. h.c. Selbstständig im Bereich PLM/CAx

 Beiträge: 4107 Registriert: 12.03.2001 Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!
|
erstellt am: 30. Jan. 2006 21:36 <-- editieren / zitieren --> Unities abgeben:         
|