Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Teilstruktur der Registry in einer Textdatei speichern (https://www.delphipraxis.net/43593-teilstruktur-der-registry-einer-textdatei-speichern.html)

Orbmu2k 6. Apr 2005 13:21

Re: Teilstruktur der Registry in einer Textdatei speichern
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hab das mir RegSaveKey mal probiert ... das speichert leider nur binäre reg Files die man dann nur manuell mit regedit importieren kann

Delphi-Quellcode:
function ExportBinaryRegKey(RootKey:HKEY; KeyPath, TargetFilename: String):boolean;
var
  rl: Cardinal;
  hToken: Cardinal;
  tkp: TOKEN_PRIVILEGES;
  key:HKEY;
  regres:Integer;
begin
  Result := True;
  if not OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then
  begin
    Result := False;
    Exit;
  end else
  begin
    if LookupPrivilegeValue(nil, 'SeBackupPrivilege', tkp.Privileges[0].Luid) then
    begin
      tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
      tkp.PrivilegeCount := 1;
      AdjustTokenPrivileges(hToken, False, tkp, 0, nil, rl);
      if GetLastError <> ERROR_SUCCESS then
      begin
        Result := False;
        Exit;
      end;
    end else
    begin
      Result := False;
      Exit;
    end;
  end;
  regres := RegOpenKey(RootKey,PAnsiChar(KeyPath),key);
  if regres <> ERROR_SUCCESS then
  begin
    Result := False;
    Exit;
  end;
  regres := RegSaveKey(key,PAnsiChar(TargetFilename),nil);
  if regres <> ERROR_SUCCESS then
  begin
    Result := False;
    Exit;
  end;
  regres := RegCloseKey(key);
  if regres <> ERROR_SUCCESS then
  begin
    Result := False;
    Exit;
  end;
end;

Habe aber bei den Schweitzern mal was gefunden -> Siehe Anhang

Mephistopheles 6. Apr 2005 13:27

Re: Teilstruktur der Registry in einer Textdatei speichern
 
Das ist wohl wahr. Genau dazu ist diese Funktion ja auch da :zwinker: ...

Importieren kannst du sie mit REGEDIT übrigens erst ab Windows XP. Bei früheren Versionen mußte man dafür REGEDT32 benutzen.

Christian Seehase 6. Apr 2005 16:39

Re: Teilstruktur der Registry in einer Textdatei speichern
 
Moin Mephisto,

Zitat:

Zitat von Mephistopheles
Importieren kannst du sie mit REGEDIT übrigens erst ab Windows XP.

falls Du damit die Reg-Dateien meinst:
Die konntest Du schon unter NT 4 mit Regedit importieren.

Mephistopheles 6. Apr 2005 17:21

Re: Teilstruktur der Registry in einer Textdatei speichern
 
Nein, es ging um jene binäre Dateien, die mein Vorredner meinte. Bis inkl. Windows 2000 hat es unter Windows (NT) nur den "Windows 95 REGEDIT" und den REGEDT32 aus NT3-Zeiten gegeben. Mit Windows XP wurden die Funktionen beider verschmolzen. So konnten sog. Backups (eben jene binären Dateien) nur mit REGEDT32 gespeichert oder geladen werden oder auch Zugriffsrechte auf Schlüssel vergeben werden.

Sorry, wenn ich etwas ungenau war.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:52 Uhr.
Seite 2 von 2     12   

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