Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 02.06.2014, 19:39   #1
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
Восклицание Failed to get data for 'DisableTaskMgr'

Друзья, нужна помощь!!!!
Вопрос! Выдает ошибку Failed to get data for 'DisableTaskMgr', если не существует данного ключа в реестре, хотя ключ должен был создаваться, если он не существует.

Код:
taskmgr := TRegistry.Create();              taskmgr.OpenKey('Software\Microsoft\Windows\CurrentVersion\Policies\System',True);
reg:=taskmgr.ReadInteger('DisableTaskMgr');
kabardinec вне форума
Старый 02.06.2014, 20:43   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

1. UAC блокирует
2. Антивирус блокирует
3. Firewall блокирует
4. Windows блокирует.
Человек_Борща вне форума
Старый 02.06.2014, 20:46   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
хотя ключ должен был создаваться, если он не существует.
А ты уверен что твоя программа имеет права на изменение этой ветки?
Кстати OpenKey это функция, и возвращает результат совей работы, а у тебя я не увидел анализа этого результата. Может стоит его прикрутить?
I'm learning to live...
Stilet вне форума
Старый 02.06.2014, 20:58   #4
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

UAC отключил
антивирус и Firewall (от AVAST) не думаю что блокируют, т. к. любой ключ в любом разделе можно редактировать методом WriteString..

а Windows каким образом кроме UAC может блокировать? тем более, если метод WriteString работает?

Цитата:
Сообщение от Stilet Посмотреть сообщение
А ты уверен что твоя программа имеет права на изменение этой ветки?
мм..запускаю от имени администратора, да и UAC отключен.

Цитата:
Сообщение от Stilet Посмотреть сообщение
Кстати OpenKey это функция, и возвращает результат совей работы, а у тебя я не увидел анализа этого результата. Может стоит его прикрутить?
а можно по подробнее?
что за функция OpenKey - знаю, читал, перечитывал не раз... а на счет анализа по подробнее пожалуйста...!

Последний раз редактировалось Stilet; 02.06.2014 в 21:28.
kabardinec вне форума
Старый 02.06.2014, 21:32   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну собсно:
Код:
if taskmgr.OpenKey(...) then
 reg:=taskmgr.ReadInteger...
else
 RaiseLastOSError();
Примерно так.
I'm learning to live...
Stilet вне форума
Старый 02.06.2014, 21:49   #6
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ну собсно:
Код:
if taskmgr.OpenKey(...) then
 reg:=taskmgr.ReadInteger...
else
 RaiseLastOSError();
Примерно так.

спасибо! как попробую, отпишусь обязательно!

[QUOTE=Stilet;1383605]
Код:
else
 RaiseLastOSError();
а это обработчик исключений или что?
kabardinec вне форума
Старый 02.06.2014, 21:56   #7
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

вопрос на счет RaiseLastOSError(); снимаю! разобрался!
kabardinec вне форума
Старый 03.06.2014, 05:25   #8
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию

Ветку то Вы открываете OpenKey, а где сам раздел реестра RootKey?
FaTaL вне форума
Старый 21.06.2014, 11:28   #9
kabardinec
Пользователь
 
Регистрация: 10.01.2014
Сообщений: 59
По умолчанию

Цитата:
Сообщение от FaTaL Посмотреть сообщение
Ветку то Вы открываете OpenKey, а где сам раздел реестра RootKey?
RootKey не обязательно писать, если обращаешься к разделу HKCU!

тему закрываю! методами KeyExist и ValueExist проверяем наличие ключа и параметра соответственно и все..!!!

Всем спасибо за участие!
kabardinec вне форума
Старый 21.06.2014, 15:28   #10
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Ребята, мы ему уже говорили, что надо свойство RootKey написать. Не даун ли ты, автор?
P.S. Без обид, но так оно и есть.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
всплывает окно failed set data for sustem dmakinc Свободное общение 1 27.09.2013 19:40
Run-time error 1004: Method Range of object Global failed failed sa920 Microsoft Office Excel 8 01.07.2012 22:40
missing data provider or data packet Dexes БД в Delphi 3 06.01.2012 11:58
Пишем в реестр : failed to set data for shell [ WinXP / Win7 ] malor Общие вопросы Delphi 3 14.11.2011 17:01
как исправить ошибку "chacheManager error: Writing index data failed!" spravka Помощь студентам 3 07.11.2010 01:42