[HKEY_LOCAL_MACHINE\Software\test]
"key"=hex:BF,31,36,30,98,14,02,92,61,41,AE,AC,C3,A9,B2,9A,19,96,A8,1C,E3,08,03,C5,7F,E9,36,6E,80,3A,30,3A,C0,3B,1E,A3,6A,E4,41,84,87,54,D8,67,ED,8E,34,C4,B1,7D,32,93,97,2B,F1,0F,93,71,38,1C,8E,47,23,11,08,A6,02,80,3F,9F,CF,E7,F3,F9,F1,BE,DF,EF,77,3B,1D,8E,46,F7,50,27,93,C9,E4,71,38,1C,C9,BB,7A,CB,BA,37,43,C9,FC,51,02,A8,BC,36,CE,01,17,23,B9,E9,D4,31,88,FC,02,E6,4D,95,9F,C3,02,B5,CD,C2,51,CC,C6,A8,79,FE,FF,FF,FF,FE,FF,FF,FF,EB,9E,41,84,89,9B,2F,7B,6A,0F,10,35,E7,EA,DB,76,E3,A0,AE,E8,A6,1C,77,F2,76,48,AC,3C,F5,30,90,8E,90,8F,9F,BB,C3,83,A9,BF,A2,A7,64,F4,B3,FD,98,79,FB,14,C8,F4,DC,88,A8,AE,59,64,74,F0,55,1A,47,62,18,96,0F,6C,E8,C1,44,B6,67,AA,28,08,02,09,38,35,35,FD,41,39,14,21,FD,6D,25,77,31,F3,6D,8E,60,6E,4E,02,41,28,CB,DD,0C,6A,C7,93,DF,DB,8A,0F,A8,E5,5A,3B,DD,2F,D9,23,C1,81,74,82,D0,AE,A7,76,DA,B2,86,9A,95,E7,97,F0,C9,6C,DF,07,F9,E7,C0,7B,D9,A1,3D,57,A5,E3,39,0D,78,55,FC,88,40,5F,CC,B4,75,A9,4B,9D,59,FB,E6,FB,68,28,19,F0,72,2C,F8,13,2E,61,09,6A,62,E6,51,81,91,61,32,F5,71,1B,AF,D0,3D,5D,AB,86,10,CF,6E,02,D9,D8,3E,2E,0E,23,BD,16,F2,74,58,75,01,A2,8B,69,0B,A6,6A,8D,C6,DA,7B,E3,FA,5F,C3,FA,29,DB,A4,6E,0A,95,21,4A,D6,D6,1D,00,A9,48,E0,7B,71,52比如上面的这个。要用DELPHI,点击一个按钮。就实现把上述内容写入注册表。怎么弄? 
我用 
Reg.WriteBinaryData('key','BF,31,36,30,98,14,02,92,61,41,AE,AC,C3,A9,B2,9A,19,96,A8,1C,E3,08,03,C5,7F,E9,36,6E,80,3A,30,3A,C0,3B,1E,A3,6A,E4,41,84,87,54,D8,67,ED,8E,34,C4,B1,7D,32,93,97,2B,F1,0F,93,71,38,1C,8E,47,23,11,08,A6,02,80,3F,9F,CF,E7,F3,F9,F1,BE,DF,EF,77,3B,1D,8E,46,F7,50,27,93,C9,E4,71,38,1C,C9,BB,7A,CB,BA,37,43,C9,FC,51,02,A8,BC,36,CE,01,17,23,B9,E9,D4,31,88,FC,02,E6,4D,95,9F,C3,02,B5,CD,C2,51,CC,C6,A8,79,FE,FF,FF,FF,FE,FF,FF,FF,EB,9E,41,84,89,9B,2F,7B,6A,0F,10,35,E7,EA,DB,76,E3,A0,AE,E8,A6,1C,77,F2,76,48,AC,3C,F5,30,90,8E,90,8F,9F,BB,C3,83,A9,BF,A2,A7,64,F4,B3,FD,98,79,FB,14,C8,F4,DC,88,A8,AE,59,64,74,F0,55,1A,47,62,18,96,0F,6C,E8,C1,44,B6,67,AA,28,08,02,09,38,35,35,FD,41,39,14,21,FD,6D,25,77,31,F3,6D,8E,60,6E,4E,02,41,28,CB,DD,0C,6A,C7,93,DF,DB,8A,0F,A8,E5,5A,3B,DD,2F,D9,23,C1,81,74,82,D0,AE,A7,76,DA,B2,86,9A,95,E7,97,F0,C9,6C,DF,07,F9,E7,C0,7B,D9,A1,3D,57,A5,E3,39,0D,78,55,FC,88,40,5F,CC,B4,75,A9,4B,9D,59,FB,E6,FB,68,28,19,F0,72,2C,F8,13,2E,61,09,6A,62,E6,51,81,91,61,32,F5,71,1B,AF,D0,3D,5D,AB,86,10,CF,6E,02,D9,D8,3E,2E,0E,23,BD,16,F2,74,58,75,01,A2,8B,69,0B,A6,6A,8D,C6,DA,7B,E3,FA,5F,C3,FA,29,DB,A4,6E,0A,95,21,4A,D6,D6,1D,00,A9,48,E0,7B,71,52
');这样不行。太多了。。 出现:one or more lines were too long and have been truncated

解决方案 »

  1.   

    mstr := 'BF,31,36,30,98,14,02,92,61,41,AE,AC,C3,A9,B2,9A,19,96,A8,1C,E3,08,03,C5,7F,E9,36,6E,80,3A,30,3A,C0,3B,1E,'
    + 'A3,6A,E4,41,84,87,54,D8,67,ED,8E,34,C4,B1,7D,32,93,97,2B,F1,0F,93,71,38,1C,8E,47,23,11,08,A6,02,80,3F,9F,CF,E7,F3,F9,F1,BE,DF,EF,77,'
    + '3B,1D,8E,46,F7,50,27,93,C9,E4,71,38,1C,C9,BB,7A,CB,BA,37,43,C9,FC,51,02,A8,BC,36,CE,01,17,23,B9,E9,D4,31,88,FC,02,E6,4D,95,9F,C3,02,B5,CD,C2,51,CC,C6,A8,79,FE,FF,FF,FF,FE,FF,FF,FF,EB'
    +.....
    Reg.WriteBinaryData('key',mstr);这样试下,我没试,没准行
      

  2.   


    procedure TForm1.Button1Click(Sender: TObject);
    mstr := 'BF,31,36,30,98,14,02,92,61,41,AE,AC,C3,A9,B2,9A,19,96,A8,1C,E3,08,03,C5,7F,E9,36,6E,80,3A,30,3A,C0,3B,1E,'
    + 'A3,6A,E4,41,84,87,54,D8,67,ED,8E,34,C4,B1,7D,32,93,97,2B,F1,0F,93,71,38,1C,8E,47,23,11,08,A6,02,80,3F,9F,CF,E7,F3,F9,F1,BE,DF,EF,77,'
    + '3B,1D,8E,46,F7,50,27,93,C9,E4,71,38,1C,C9,BB,7A,CB,BA,37,43,C9,FC,51,02,A8,BC,36,CE,01,17,23,B9,E9,D4,31,88,FC,02,E6,4D,95,9F,C3,02,B5,CD,C2,51,CC,C6,A8,79,FE,FF,FF,FF,FE,FF,FF,FF,EB'var
      Reg: TRegistry;
    begin
      Reg := TRegistry.Create;
      try
        Reg.RootKey := HKEY_LOCAL_MACHINE;
        if Reg.OpenKey('SOFTWARE\test', True) then
        begin
          Reg.WriteBinaryData('key',mstr);
          Reg.CloseKey;
        end;
      finally
        Reg.Free;
        ShowMessage('完成操作。');
      end;
    end;这样子吗?好像也不行呀?还缺少什么
      

  3.   

    叫你忽悠了,WriteBinaryData根本不是你那样用的。自己查下帮助吧。
      

  4.   

    "key"=hex:bf,31,36,30,98,14,02,92,61,41,ae,ac,c3,a9,b2,9a,19,96,a8,1c,e3,\
      08,03,c5,7f,e9,36,6e,80,3a,30,3a,c0,3b,1e,a3,6a,e4,41,84,87,54,d8,67,ed,8e,\
      34,c4,b1,7d,32,93,97,2b,f1,0f,93,71,38,1c,8e,47,23,11,08,a6,02,80,3f,9f,cf,\
      e7,f3,f9,f1,be,df,ef,77,3b,1d,8e,46,f7,50,27,93,c9,e4,71,38,1c,c9,bb,7a,cb,\
      ba,37,43,c9,fc,51,02,a8,bc,36,ce,01,17,23,b9,e9,d4,31,88,fc,02,e6,4d,95,9f,\
      c3,02,b5,cd,c2,51,cc,c6,a8,79,fe,ff,ff,ff,fe,ff,ff,ff,eb,9e,41,84,89,9b,2f,\
      7b,6a,0f,10,35,e7,ea,db,76,e3,a0,ae,e8,a6,1c,77,f2,76,48,ac,3c,f5,30,90,8e,\
      90,8f,9f,bb,c3,83,a9,bf,a2,a7,64,f4,b3,fd,98,79,fb,14,c8,f4,dc,88,a8,ae,59,\
      64,74,f0,55,1a,47,62,18,96,0f,6c,e8,c1,44,b6,67,aa,28,08,02,09,38,35,35,fd,\
      41,39,14,21,fd,6d,25,77,31,f3,6d,8e,60,6e,4e,02,41,28,cb,dd,0c,6a,c7,93,df,\
      db,8a,0f,a8,e5,5a,3b,dd,2f,d9,23,c1,81,74,82,d0,ae,a7,76,da,b2,86,9a,95,e7,\
      97,f0,c9,6c,df,07,f9,e7,c0,7b,d9,a1,3d,57,a5,e3,39,0d,78,55,fc,88,40,5f,cc,\
      b4,75,a9,4b,9d,59,fb,e6,fb,68,28,19,f0,72,2c,f8,13,2e,61,09,6a,62,e6,51,81,\
      91,61,32,f5,71,1b,af,d0,3d,5d,ab,86,10,cf,6e,02,d9,d8,3e,2e,0e,23,bd,16,f2,\
      74,58,75,01,a2,8b,69,0b,a6,6a,8d,c6,da,7b,e3,fa,5f,c3,fa,29,db,a4,6e,0a,95,\
      21,4a,d6,d6,1d,00,a9,48,e0,7b,71,52
      

  5.   

    因需寫一支程式,通過修改註冊表來控制電腦的電源管理,需到如下問題:
    我之前有寫過類似的,這樣可以實現
    getmem(buffer,4);
    hextobin(pchar('01000000'),pchar(buffer),4);
    reg.WriteBinaryData('NTAuthEnabled',buffer[0],4);但是像下面這麽多的字串,就執行失敗,請教有何方法可以解決,感謝:請問如何通過delphi寫入如下資料至註冊表中,謝謝:[HKEY_CURRENT_USER\Control Panel\PowerCfg\GlobalPowerPolicy]
    "Policies"=hex:01,00,00,00,00,00,00,00,03,00,00,00,10,00,00,00,00,00,00,00,03,\
    00,00,00,10,00,00,00,02,00,00,00,03,00,00,00,00,00,00,00,02,00,00,00,03,00,\
    00,00,00,00,00,00,02,00,00,00,01,00,00,00,00,00,00,00,02,00,00,00,01,00,00,\
    00,00,00,00,00,01,00,00,00,03,00,00,00,02,00,00,00,04,00,00,c0,01,00,00,00,\
    02,00,00,00,01,00,00,00,0a,00,00,00,00,00,00,00,03,00,00,00,01,00,01,00,01,\
    00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,02,00,00,00,\
    00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,03,00,00,00,00,\
    00,16,00,00,00問題己解決,見如下code:          reg.rootkey:=HKEY_CURRENT_USER;
            reg.OpenKey('\Control Panel\PowerCfg\GlobalPowerPolicy',true);
            getmem(buffer,176);
            hextobin(pchar('010000000000000003000000100000000000000003'+
      '00000010000000020000000300000000000000020000000300'+
      '00000000000002000000010000000000000002000000010000'+
      '0000000000010000000300000002000000040000c001000000'+
      '02000000010000000a00000000000000030000000100010001'+
      '00000000000000000000000000000000000000000002000000'+
      '000000000000000000000000000000000000000003000000000016000000'),pchar(buffer),176);
            reg.WriteBinaryData('Policies',buffer[0],176);
    我搜索到别的论坛和这个问题差不多。但是我不会引用过来
      

  6.   


    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, StrUtils, Registry;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    var
            mstr: string;
            mbuf: array of byte;
            mcount,i: integer;
            Reg: TRegistry;
    begin
            mstr := 'bf,31,36,30,98,14,02,92,61,41,ae,ac,c3,a9,b2,9a,19,96,a8,1c,e3,'+
                    '08,03,c5,7f,e9,36,6e,80,3a,30,3a,c0,3b,1e,a3,6a,e4,41,84,87,54,d8,67,ed,8e,'+
                    '34,c4,b1,7d,32,93,97,2b,f1,0f,93,71,38,1c,8e,47,23,11,08,a6,02,80,3f,9f,cf,'+
                    'e7,f3,f9,f1,be,df,ef,77,3b,1d,8e,46,f7,50,27,93,c9,e4,71,38,1c,c9,bb,7a,cb,'+
                    'ba,37,43,c9,fc,51,02,a8,bc,36,ce,01,17,23,b9,e9,d4,31,88,fc,02,e6,4d,95,9f,'+
                    'c3,02,b5,cd,c2,51,cc,c6,a8,79,fe,ff,ff,ff,fe,ff,ff,ff,eb,9e,41,84,89,9b,2f,'+
                    '7b,6a,0f,10,35,e7,ea,db,76,e3,a0,ae,e8,a6,1c,77,f2,76,48,ac,3c,f5,30,90,8e,'+
                    '90,8f,9f,bb,c3,83,a9,bf,a2,a7,64,f4,b3,fd,98,79,fb,14,c8,f4,dc,88,a8,ae,59,'+
                    '64,74,f0,55,1a,47,62,18,96,0f,6c,e8,c1,44,b6,67,aa,28,08,02,09,38,35,35,fd,'+
                    '41,39,14,21,fd,6d,25,77,31,f3,6d,8e,60,6e,4e,02,41,28,cb,dd,0c,6a,c7,93,df,'+
                    'db,8a,0f,a8,e5,5a,3b,dd,2f,d9,23,c1,81,74,82,d0,ae,a7,76,da,b2,86,9a,95,e7,'+
                    '97,f0,c9,6c,df,07,f9,e7,c0,7b,d9,a1,3d,57,a5,e3,39,0d,78,55,fc,88,40,5f,cc,'+
                    'b4,75,a9,4b,9d,59,fb,e6,fb,68,28,19,f0,72,2c,f8,13,2e,61,09,6a,62,e6,51,81,'+
                    '91,61,32,f5,71,1b,af,d0,3d,5d,ab,86,10,cf,6e,02,d9,d8,3e,2e,0e,23,bd,16,f2,'+
                    '74,58,75,01,a2,8b,69,0b,a6,6a,8d,c6,da,7b,e3,fa,5f,c3,fa,29,db,a4,6e,0a,95,'+
                    '21,4a,d6,d6,1d,00,a9,48,e0,7b,71,52';
            mstr := mstr + ',';
            mcount := (Length(mstr) div 3);
            SetLength(mbuf, mcount);
            for i:=0 to mcount-1 do
            begin
                    mbuf[i] := StrToInt('$'+LeftBStr(mstr,2));
                    Delete(mstr,1,3);
            end;        Reg := TRegistry.Create;
            Reg.RootKey := HKEY_LOCAL_MACHINE;
            if Reg.OpenKey('SOFTWARE\test', True) then
            begin
                    Reg.WriteBinaryData('key',mbuf[0],mcount);
                    Reg.CloseKey;
            end;        Reg.Free;
    end;end.