Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2017.01.15;
Скачать: CL | DM;

Вниз

Чтение из HKEY_LOCAL_MACHINE правильно ли реализовано   Найти похожие ветки 

 
AlexeyTG ©   (2014-12-30 21:15) [0]

Решил в лаунчере о котором ранее писал сделать не в самом ЕХЕ, а из реестра брать значения. Пробный код выводящий значения мессейджем.

Просьба оценить правильно ли написана ф-я получения значений. ОС: х64

program Project1;

uses
 Winapi.Windows,System.SysUtils,Registry,Vcl.Dialogs;
Var
S1,S2:String;

{$R *.res}

function Reg (Const ReadS:String):string;
var
R:TRegistry;
begin
R:= TRegistry.Create;
Try
  R.RootKey := HKEY_LOCAL_MACHINE;
  R.Access := KEY_WOW64_64KEY or KEY_READ;
  if R.OpenKeyReadOnly("SOFTWARE\RunApp") then
   Begin
     Result:=R.ReadString(ReadS);
   End;
Finally
  R.Free;
End;
end;

begin
S1:=Reg("ID1");
S2:=Reg("ID2");
ShowMessage("ID1: "+S1+", ID2: "+S2);
end.


 
Rouse_ ©   (2014-12-30 21:30) [1]

Правильно


 
Rouse_ ©   (2014-12-30 21:36) [2]

За исключением что ключ доступа неверный, нужно key_wow32_64key использовать для 32 бит


 
AlexeyTG ©   (2014-12-31 15:42) [3]

Rouse_ Имеется ввиду KEY_WOW64_32KEY ?

С ним читает из раздела Wow6432Node на х64 системе и из нужного раздела на х32 системе :(

В текущем виде (KEY_WOW64_64KEY) читает из HKEY_LOCAL_MACHINE и работает как на х64 системе, так и на виртуалке с х32 Windows 7 читая из одного нужного раздела на обоих системах.

Т.е. не нужно с учетом разрядности ОС разные рег файлы делать



Страницы: 1 вся ветка

Текущий архив: 2017.01.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
2-1423420494
MrFeuer
2015-02-08 21:34
2017.01.15
Поиск файлов


15-1457536558
DVM
2016-03-09 18:15
2017.01.15
Как думаете, это ошибка в TPointerStream в VCL?


2-1421424584
Псб
2015-01-16 19:09
2017.01.15
AV после вызова GetTempFileNameW


2-1425301615
Sopelka
2015-03-02 16:06
2017.01.15
datatime + - gmt


1-1341941337
4ainik
2012-07-10 21:28
2017.01.15
При удалении TabSheet-ов стринггрид теряет фокус