Вверх ↑
Этот топик читают: Гость
Ответов: 245
Рейтинг: 3
#46: 2011-06-23 15:19:56 ЛС | профиль | цитата
OpenKey(ReadString(_Data,_data_Key,_prop_Key),false,KEY_READ)

хзз может и не так....
карма: 0

0
Ответов: 4663
Рейтинг: 767
#47: 2011-06-23 15:21:17 ЛС | профиль | цитата
nesco писал(а):
Тут банально надо перетащить в этот юнит функцию KOL

Да нет, вроде не надо. Компонент не использует функцию KOL, а прямо вызывает RegOpenKeyEx и без изменений передаёт туда KEY_READ or $100.
карма: 26

0
Ответов: 245
Рейтинг: 3
#48: 2011-06-23 15:32:52 ЛС | профиль | цитата
doRead вызывает из hiRegistry.pas а doEnumValues из kol
карма: 0

0
Разработчик
Ответов: 26304
Рейтинг: 2146
#49: 2011-06-23 15:39:52 ЛС | профиль | цитата
goluzov, ты на мой вопрос не ответил -- штатный компонент работает на Win2000
карма: 22

0
Ответов: 245
Рейтинг: 3
#50: 2011-06-23 15:49:34 ЛС | профиль | цитата
да. только если подставить or $100 не работает
карма: 0

0
Разработчик
Ответов: 26304
Рейтинг: 2146
#51: 2011-06-23 15:51:43 ЛС | профиль | цитата
goluzov писал(а):
а doEnumValues из kol

Ну так и перетащи из KOL все нужные функции и прицепи к ним, нужный тебе, параметр. В чем проблема-то
------------ Дoбавленo в 15.51:
goluzov писал(а):
да. только если подставить or $100 не работает

Подцепи анализ версии, по аналогии из EnumProcess
карма: 22

0
Ответов: 245
Рейтинг: 3
#52: 2011-06-23 15:54:10 ЛС | профиль | цитата
нужно всеволишь сделать вывод ProgramFilesDir и сравнить есть ли там x86
------------ Дoбавленo в 15.54:
не понимаю я как совместить RegOpenKeyEx и RegQueryValueEx
карма: 0

0
Ответов: 4663
Рейтинг: 767
#53: 2011-06-23 16:01:47 ЛС | профиль | цитата
nesco, действительно, на Win2000 с параметром KEY_WOW64_64KEY не работает - doRead выдаёт пустую строку
------------ Дoбавленo в 15.57:
Во я слепой! Полез проверять на Win2000! Когда прямо перед носом написано
http://msdn.microsoft.com/en-us/library/ms724878(v=vs.85).aspx
Windows 2000: This flag is not supported.

Заработался, видимо
------------ Дoбавленo в 16.01:
goluzov, из-за одной раритетной ОС ты будешь городить кучу костылей по определению версии?
карма: 26

0
Ответов: 245
Рейтинг: 3
#54: 2011-06-23 16:10:33 ЛС | профиль | цитата
так и на раних версиях xp не работает навернае
карма: 0

0
Ответов: 4663
Рейтинг: 767
#55: 2011-06-23 16:14:41 ЛС | профиль | цитата
Если бы не работало, в MSDN так бы и написали.
карма: 26

0
Разработчик
Ответов: 26304
Рейтинг: 2146
#56: 2011-06-23 16:22:51 ЛС | профиль | цитата
goluzov писал(а):
не понимаю я как совместить RegOpenKeyEx и RegQueryValueEx

Зачем, когда флаг KEY_WOW64_64KEY или KEY_WOW64_32KEY используются только с

MSDN писал(а):
These flags can be specified in the samDesired parameter of the following registry functions:
RegCreateKeyEx
RegDeleteKeyEx
RegOpenKeyEx

карма: 22

0
Ответов: 245
Рейтинг: 3
#57: 2011-06-23 16:41:25 ЛС | профиль | цитата
параметр выводит RegQueryValueEx
------------ Дoбавленo в 16.40:
но сначала открывает RegOpenKeyEx
------------ Дoбавленo в 16.41:
сделай функцию которая выводит ProgramFilesDir и сравнивает есть ли там x86
карма: 0

0
Разработчик
Ответов: 26304
Рейтинг: 2146
#58: 2011-06-23 16:44:30 ЛС | профиль | цитата
goluzov писал(а):
параметр выводит RegQueryValueEx

Для него не нужен флаг KEY_WOW64_64KEY
карма: 22

0
Ответов: 245
Рейтинг: 3
#59: 2011-06-23 16:57:17 ЛС | профиль | цитата
да. не нада
карма: 0

0
Разработчик
Ответов: 26304
Рейтинг: 2146
#60: 2011-06-23 16:57:17 ЛС | профиль | цитата
goluzov писал(а):
сделай функцию которая выводит ProgramFilesDir и сравнивает есть ли там x86

Да не буду я ее делать. Вот я сейчас еще IС не писал. Есть штатный компонент, вставь туда нужный флаг и проверяй, что тебе надо

Если хочешь именно код, то кинь запрос в купи/продай, возможно, кто-то подпишется
карма: 22

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)