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

Вниз

Не считывается инфа из реестра под другим пользователем   Найти похожие ветки 

 
BD   (2007-11-13 21:58) [0]

Имеется программа (Делфи+FoxPro), установленная пользователем "1". При инсталляции этой программы происходит запись некоторого значения в реестр винды.
Если программу запускает пользователь "1", считывание информации из реестра происходит нормально. Но если программу запускает пользователь "2", информация не считывается. Нужго чтобы программа считывала информацию из реестра под любым пользователем.


 
Anatoly Podgoretsky ©   (2007-11-13 22:07) [1]

> BD  (13.11.2007 21:58:00)  [0]

Для этого надо писать в HKLM


 
BD   (2007-11-14 22:11) [2]

Я и пишу в HKEY_LOCAL_MACHINE\SOFTWARE\XXX\[переменная].

begin
     reg:=TRegistry.Create;
     SubKey:="\SOFTWARE\XXX\";
     reg.RootKey:=HKEY_LOCAL_MACHINE;
     if reg.KeyExists(SubKey) then
       begin
          reg.OpenKey(SubKey, false);
          Location_BD:=reg.ReadString("NameBD");
          reg.CloseKey;
          reg.Free;
..........................
end;

при считывании из реестра под пользователем "2" информация  не считывается. Пишет:
Location_BD=" "
А под пользователем "1" (который инсталлирован программу) - все нормально


 
KilkennyCat ©   (2007-11-14 22:43) [3]

и права у пользователей одинаковые...


 
ЮЮ ©   (2007-11-15 03:13) [4]

>reg:=TRegistry.Create;


> [3] KilkennyCat ©   (14.11.07 22:43)
> и права у пользователей одинаковые...


Для чтения используй другой конструктор:

constructor Create(AAccess:LongWord); overload;


 
BD   (2007-11-23 00:41) [5]

RE:
egin
    reg:=TRegistry.Create;
    SubKey:="\SOFTWARE\XXX\";
    reg.RootKey:=HKEY_LOCAL_MACHINE;
    if reg.KeyExists(SubKey) then
      begin
         reg.OpenKey(SubKey, false);
         Location_BD:=reg.ReadString("NameBD");
         reg.CloseKey;
         reg.Free;
..........................
end;

Сделали так:
вместо строки reg.OpenKey(SubKey, false)
поставили строку reg.OpenKeyReadOnly(SubKey)
Теперь админ (пользователь "1") устанавливает программу, а обычный пользователь (пользователь "2") читает из реестра.



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
2-1195745591
Fraider
2007-11-22 18:33
2007.12.16
Лист бокс со скошенным углом


2-1195287266
Hint
2007-11-17 11:14
2007.12.16
Получение названий продуктов запущенных приложений


2-1195720465
sia
2007-11-22 11:34
2007.12.16
Все события прекращены?


3-1187016660
ChaoX
2007-08-13 18:51
2007.12.16
Как заставить TDBImage понимать jpeg и


4-1179914782
Ангела
2007-05-23 14:06
2007.12.16
Как отследить, какие функции вызывает программа из Dll ?