Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
2-1421904151
i2e
2015-01-22 08:22
2017.01.15
В MDI-приложении надо программно сделать окно активным


4-1281020267
Danger
2010-08-05 18:57
2017.01.15
SQLite в winapi-приложении


2-1424681725
Эрнест
2015-02-23 11:55
2017.01.15
URLEncodeReservedChars


3-1311236769
yurikon
2011-07-21 12:26
2017.01.15
Метод TADODataSet.Seek


2-1422510042
Смирнов А.И.
2015-01-29 08:40
2017.01.15
Копирование файла




   Наверх