本人最近在写一个注册表的工具。要改写备份的REG文件。[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{06BE7323-EF34-11d1-ACD8-00C04FA31009}\Implemented Categories\{40FC6ED4-2438-11CF-A3DB-080036F12502}]
@=""
要把前面的路径改到自己的路径下如:
[HKEY_LOCAL_MACHINE\SYSTEM\MYPATH\SOFTWARE\Classes\CLSID\{06BE7323-EF34-11d1-ACD8-00C04FA31009}\Implemented Categories\{40FC6ED4-2438-11CF-A3DB-080036F12502}]
@=""
该如何做?请大侠指点

解决方案 »

  1.   

    unit Unit1; 
    interface 
    uses 
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, 
    Dialogs, StdCtrls, Registry; // 记得要加入这个。 
    type 
    TForm1 = class(TForm) 
    Button1: TButton; 
    procedure Button1Click(Sender: TObject); 
    end; 
    var 
    Form1: TForm1; 
    implementation 
    {$R *.DFM} procedure TForm1.Button1Click(Sender: TObject); 
    Const 
    FPath = '\Software\Microsoft\Office\8.0\Word\InstallRoot'; 
    FKey = 'Path'; 
    FMyPath = '\Software\3hSoft'; 
    FMyKey = 'MyData'; 
    Var 
    Reg : TRegistry; 
    begin 
    Reg := TRegistry.Create; 
    try 
    Reg.RootKey := HKEY_LOCAL_MACHINE; 
    If Reg.OpenKey(FPath, False) then 
    ShowMessage(Reg.ReadString(FKey)); // 读出的 WinWord 的路径就显示出来了。 
    Reg.CreateKey(FMyPath); // 创建我们的主键 
    Reg.OpenKey(FMyPath, True); // 进入我们自己的主键中 
    Reg.WriteString(FMyKey, 'This is a registry operation test program.'); 
    // 写进键值。 
    finally 
    Reg.Free; // 用 Try..Finally 结构确保 REG 变量能够释放。 
    end; 
    end; 
    end. 
      

  2.   

    你说的是字符串的替换吧?
    [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{06BE7323-EF34-11d1-ACD8-00C04FA31009}\Implemented Categories\{40FC6ED4-2438-11CF-A3DB-080036F12502}]
    @=""
    把上述字符串到SOFTWARE 全部删除掉,然后用[HKEY_LOCAL_MACHINE\SYSTEM\MYPATH\ 替换掉不就行了
      

  3.   

    Var Reg : TRegistry; 
    Reg := TRegistry.Create; 
    Reg.RootKey := HKEY_LOCAL_MACHINE; 
    If Reg.OpenKey([Path], True) then 
    Reg.CreateKey();  
    Reg.WriteString(); 
    Reg.Free; 
    就这么几步而已...