All pastes #277586 Raw Edit

Unnamed

public text v1 · immutable
·published 2006-12-13 11:03 UTC
rendered paste body
function RegCopyKey(const SourceRootKey: Integer; const SourceSubKeyName: String; const TargetRootKey: Integer; const TargetSubKeyName: String): Boolean;
var
  Keys: TArrayOfString;
  Names: TArrayOfString;
  Value: string;
  I: Integer;
  S: String;
begin
  Result := False;

  if RegGetValueNames(SourceRootKey, SourceSubKeyName, Names) then
  begin
    for I := 0 to GetArrayLength(Names)-1 do
    begin
      if RegQueryStringValue(SourceRootKey, SourceSubKeyName, Names[I], Value) then
        RegWriteStringValue(TargetRootKey, TargetSubKeyName, Names[I], Value);
    end;
  end;

  if RegGetSubkeyNames(SourceRootKey, SourceSubKeyName, Keys) then
  begin
    for I := 0 to GetArrayLength(Keys)-1 do
      Result := RegCopyKey(SourceRootKey, SourceSubKeyName + '\' + Keys[I], TargetRootKey, TargetSubKeyName + '\' + Keys[I]) or Result;
  end else
  begin
    Result := False;
  end;
end;