2010-01-04 6 views

Antwort

6

Die schnelle Antwort ist Ja, sie sind Registrierungseinstellungen, die lange Antwort ist Nein, sie sind nicht einfach Registrierungseinstellungen. Die Werte sind binär und verweisen auf eine ACL-Struktur. Um diese zu ändern, müssen Sie die ACL laden, aktualisieren und speichern (was ziemlich viel Code erfordert). Die DCOMPerm sample im Windows SDK ist ein guter Ausgangspunkt, ich habe es als Grundlage für eine Reihe von Klassen verwendet, die ich bei der Arbeit verwende, um dieses Problem zu behandeln (Leider kann ich diesen Code nicht in die Public Domain freigeben)

Sie können die MSDN Documentation für die DCOM-Schlüsselstruktur überprüfen - das deckt computerweite Einstellungen ab. COM-spezifische Einstellungen werden unter seiner APPID in der Registrierung in den Werten AccessPermission und LaunchPermission gespeichert.

Denken Sie daran, dass das Ändern der ACLs für die maschinenweiten Einstellungen Ihr System schnell unbrauchbar machen kann, wenn Sie es falsch machen. Wenn ich mich richtig erinnere, kannst du einfach die Werte löschen (über RegEdit) und das OS wird die Standardeinstellungen wiederherstellen, um deinen Rechner zurück zu bringen ... aber ich bin nicht mehr 100% sicher.

BEARBEITEN: Die binären Daten sind eigentlich ein Security Descriptor, aber letztlich ist es die enthaltene ACL, die behandelt werden muss - die SD fügt einfach eine weitere Codeebene hinzu, wenn sie entpackt/gepackt wird.

+0

Thx für Ihre Zeiger. Ich werde es überprüfen und es hoffentlich zum Laufen bringen. – pantarhei

Verwandte Themen