Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

RegKey.ReadBinaryData нужно Binary в String [D6]


Atrion ©   (2005-02-10 08:30:00) 

RegKey.ReadBinaryData(CValName, Buffer, BufferSize);
Нужно преобразовать полученные данные(Buffer) в String...


опппа   (2005-02-11 05:21:00) [1]


> Anatoly Podgoretsky ©

Как всегда в своем репертуаре...

З.Ы. Хотя Atrion действительно невнимателен... ^_^


Anatoly Podgoretsky   (2005-02-10 14:23:00) [2]

Atrion ©   (10.02.05 12:04) [12]
А ответы в своем обсуждении ты читаешь, или только свои вопросы?
Чукча не читатель.


begin...end   (2005-02-10 13:52:00) [3]

> Atrion ©   (10.02.05 12:04) [12]

> нужна ссылка...

Вам её уже дали. См. [10].


Atrion   (2005-02-10 12:04:00) [4]

>>Anatoly Podgoretsky>> Поиск по форуму, сегодня есть ветка по этому поводу

Искал и ничего конкретного не нашел...нужна ссылка...


Anatoly Podgoretsky   (2005-02-10 09:24:00) [5]

Поиск по форуму, сегодня есть ветка по этому поводу


КаПиБаРа   (2005-02-10 09:15:00) [6]

http://www.delphimaster.ru/cgi-bin/forum.pl?id=1107966108&n=0


Atrion   (2005-02-10 09:12:00) [7]

>>КаПиБаРа . Какую строку ты хочешь получить?

Хочу получить такое же представление бинарных данных как в RegEdit...


Anatoly Podgoretsky   (2005-02-10 09:08:00) [8]

Это уже другой вопрос, это не двоичные данные, а преобразованые в хекс формат. Где то поблизости есть ветка по этой теме.
В следующий раз сразу задавай конечный вопрос, минуя промежуточные стадии. А то выходит, что я зря потратил свое время. И теперь мне уже не хочется тратить его еще раз и может быть не один раз.


КаПиБаРа   (2005-02-10 09:06:00) [9]

Atrion ©   (10.02.05 9:04) [6]
В примерах ни одного текстового символа нет. Какую строку ты хочешь получить?


Atrion   (2005-02-10 09:04:00) [10]

в таком виде 00 00 10 00  и в таком 1с 00 00 00


Anatoly Podgoretsky   (2005-02-10 09:03:00) [11]

>>Anatoly Podgoretsky>>buffer будет содержать #0
Ну и что, пусть содержит, тогда надо не присваивание, а пересылку в строку из буфера. Кроме того почему бы не читать напрямую в строку, минуя всякие промежуточные хранилища и операции.


КаПиБаРа   (2005-02-10 08:57:00) [12]

Atrion ©   (10.02.05 8:30)
Как они записаны в Реестр или как они там выглядят?


Atrion   (2005-02-10 08:55:00) [13]


const
  CKeyName: string = 'System\Setup';
  CValName: string = 'NetcardDlls';
var
  keyGood: boolean;
  p: integer;
  regKey: TRegistry;
  tmpStr: string;
  vSize: integer;
begin
  regKey := TRegistry.Create;
  try
    regKey.RootKey := HKEY_LOCAL_MACHINE;
    keyGood  := regKey.OpenKey(CKeyName, False);

    if (keyGood) then
    begin
      vSize := regKey.GetDataSize(CValName);

      if (vSize > 0) then
      begin
        SetLength(tmpStr, vSize);
        regKey.ReadBinaryData(CValName, tmpstr[1], vSize);

        repeat
          p := Pos(#0, tmpStr);

          if p <> 0 then
          begin
            Delete(tmpStr, p, 1);            
          end;
        until p = 0;
      end;
    end;
  finally
    regKey.Free;
  end;


Вот нашел примерчик?..но все равно он работать не хочет...

>>Anatoly Podgoretsky>>buffer будет содержать #0


Anatoly Podgoretsky   (2005-02-10 08:40:00) [14]

S := Buf;


Anatoly Podgoretsky   (2005-02-10 08:40:00) [15]

S := Buf;


Наверх

Титульная страница Поиск, карта сайта Написать письмо