FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

2.08 Не удается открыть ветку реестра

 
Начать новую тему   Ответить на тему    Список форумов PrintStore.ru - система учета расходных материалов -> Общие вопросы
Предыдущая тема :: Следующая тема  
Автор Сообщение
printdee



Зарегистрирован: 20.03.2017
Сообщения: 35

СообщениеДобавлено: Пн Мар 20, 2017 21:47 20.03.2017    Заголовок сообщения: 2.08 Не удается открыть ветку реестра Ответить с цитатой

Добрый вечер,
Только установил программу, в настройках пытаюсь указать файл БД для службы мониторинга и ловлю ошибку:



Посмотрел - в реестре ветка PerfectSoft отсутствует.

W10 x64
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Michael
Руководитель проекта


Зарегистрирован: 12.10.2005
Сообщения: 2488
Откуда: Москва

СообщениеДобавлено: Вт Мар 21, 2017 10:44 21.03.2017    Заголовок сообщения: Ответить с цитатой

Для записи в эту ветку реестра необходим административный доступ. Поэтому для установки данной настройки необходимо однократно запустить программу из административной учетной записи (для Windows XP) или дать такие полномочия, нажав правой кнопкой мыши на иконке программы и выбрав пункт "Запуск от имени администратора" (для ОС, начиная с Windows 7).

В одной из следующих версий программы будет добавлена поддержка UAC и программа на лету будет запрашивать дополнительные полномочия.

Ошибкой программы это не является, поэтому переношу тему в общее обсуждение.
_________________
Любой путь начинается с первого шага
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
printdee



Зарегистрирован: 20.03.2017
Сообщения: 35

СообщениеДобавлено: Вт Мар 21, 2017 19:01 21.03.2017    Заголовок сообщения: Ответить с цитатой

Michael писал(а):
Для записи в эту ветку реестра необходим административный доступ. Поэтому для установки данной настройки необходимо однократно запустить программу из административной учетной записи (для Windows XP) или дать такие полномочия, нажав правой кнопкой мыши на иконке программы и выбрав пункт "Запуск от имени администратора" (для ОС, начиная с Windows 7).

В одной из следующих версий программы будет добавлена поддержка UAC и программа на лету будет запрашивать дополнительные полномочия.

Ошибкой программы это не является, поэтому переношу тему в общее обсуждение.


1. Если запустить программу от другого пользователя (админа) - у нее будут совсем другие права на общую шару, где лежит БД и она уже может не получить доступа к ней (мой вариант). А запускать от имени доменного админа вообще bad way.
Цитата:
однократно запустить программу из административной учетной записи (для Windows XP) или дать такие полномочия, нажав правой кнопкой мыши на иконке программы и выбрав пункт "Запуск от имени администратора" (для ОС, начиная с Windows 7).
2. Нет не помогает. Сколько раз не запускай от имени админа, в следующий раз при запуске от обычного пользователя снова будет такая же ошибка.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Michael
Руководитель проекта


Зарегистрирован: 12.10.2005
Сообщения: 2488
Откуда: Москва

СообщениеДобавлено: Чт Мар 23, 2017 13:26 23.03.2017    Заголовок сообщения: Ответить с цитатой

printdee писал(а):
1. Если запустить программу от другого пользователя (админа) - у нее будут совсем другие права на общую шару, где лежит БД и она уже может не получить доступа к ней (мой вариант). А запускать от имени доменного админа вообще bad way.

Так дайте этому админу на время доступ к шаре с базой. После установки настройки этот доступ можно отключить.

printdee писал(а):
2. Нет не помогает. Сколько раз не запускай от имени админа, в следующий раз при запуске от обычного пользователя снова будет такая же ошибка.

Ошибка возникает только при записи в реестр. Тут есть такой момент, что диалог настроек при нажатии ОК обновляет все доступные настройки, в том числе и настройку службы мониторинга. Это будет доработано в программе, чтобы сохранялись только измененные настройки. Можно также пользователю отключить доступ к глобальным настройкам программы (через управление доступом), и эта ошибка также не будет беспокоить.
_________________
Любой путь начинается с первого шага
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
printdee



Зарегистрирован: 20.03.2017
Сообщения: 35

СообщениеДобавлено: Чт Мар 23, 2017 14:37 23.03.2017    Заголовок сообщения: Ответить с цитатой

[quote="Michael"]
printdee писал(а):

1.Так дайте этому админу на время доступ к шаре с базой. После установки настройки этот доступ можно отключить.

2.Ошибка возникает только при записи в реестр. Тут есть такой момент, что диалог настроек при нажатии ОК обновляет все доступные настройки, в том числе и настройку службы мониторинга. Это будет доработано в программе, чтобы сохранялись только измененные настройки. Можно также пользователю отключить доступ к глобальным настройкам программы (через управление доступом), и эта ошибка также не будет беспокоить.


1. Я понял мысль и давно это протестировал на локальной базе. А вот выделенное сочетание не является корректным. потому что:

Запускаем от админа, настраиваете все, сохраняем. Закрываем программу. Открываем от обычного пользователя. Знаете что будет в настройках? Пустота - http://prntscr.com/eng6yj . А изменить не сможем потому что ошибка.

Поэтому повторюсь - не важно где база в принципе, лежит, не важно сколько раз вы предварительно настроили от админа и сохранили, при запуске от юзера путь слетит.

Это значит фактически данная функция работоспособна только при работе от админа
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Michael
Руководитель проекта


Зарегистрирован: 12.10.2005
Сообщения: 2488
Откуда: Москва

СообщениеДобавлено: Чт Мар 23, 2017 14:58 23.03.2017    Заголовок сообщения: Ответить с цитатой

printdee писал(а):
Поэтому повторюсь - не важно где база в принципе, лежит, не важно сколько раз вы предварительно настроили от админа и сохранили, при запуске от юзера путь слетит.

Как же путь слетит, если у юзера нет доступа к этой ветке реестра? Программа просто не может прочитать данные (и не показывает их в интерфейсе) и не может записать в реестр, о чем честно сообщает. В реестре все остается на месте.

printdee писал(а):
Это значит фактически данная функция работоспособна только при работе от админа

Если под работоспособностью понимать возможность изменения данной настойки, то да, нужен доступ к конкретной ветке реестра. Полный админский доступ не обязателен.
_________________
Любой путь начинается с первого шага
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
printdee



Зарегистрирован: 20.03.2017
Сообщения: 35

СообщениеДобавлено: Чт Мар 23, 2017 15:02 23.03.2017    Заголовок сообщения: Ответить с цитатой

Вас понял, но если программа не может прочитать данные в реестре - значит она и не узнает где файл бд?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Michael
Руководитель проекта


Зарегистрирован: 12.10.2005
Сообщения: 2488
Откуда: Москва

СообщениеДобавлено: Чт Мар 23, 2017 15:06 23.03.2017    Заголовок сообщения: Ответить с цитатой

Я понимаю, возникает некоторое неудобство, когда юзер входит в настройки и потом сохраняет свои изменения. Какое-то лишнее сообщение об ошибке выскакивает. По хорошему надо проверять доступ к реестру, и если доступа на запись нет, то данную страницу настроек полностью отключать с сообщением об отсутствии прав (на самой странице). Там еще на этой странице запланировано управление службой (пуск/стоп), вот все вместе и будет реализовано.
_________________
Любой путь начинается с первого шага
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Michael
Руководитель проекта


Зарегистрирован: 12.10.2005
Сообщения: 2488
Откуда: Москва

СообщениеДобавлено: Чт Мар 23, 2017 15:09 23.03.2017    Заголовок сообщения: Ответить с цитатой

printdee писал(а):
Вас понял, но если программа не может прочитать данные в реестре - значит она и не узнает где файл бд?

Настройка, которую мы обсуждаем - это путь для службы мониторинга (Harvester). А программа путь к БД запоминает в HKCU, с этим проблемы быть не должно.
_________________
Любой путь начинается с первого шага
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
printdee



Зарегистрирован: 20.03.2017
Сообщения: 35

СообщениеДобавлено: Чт Мар 23, 2017 15:11 23.03.2017    Заголовок сообщения: Ответить с цитатой

Тут еще один момент, который я только сейчас понял:
настройки выполняются из программы, но использует их именно служба харвестера, поэтому даже если юзер не видит настройки - по факту служба выполняется от имени системы, и без проблем читает эти настройки.

UPD. не видел предыдущий пост
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Michael
Руководитель проекта


Зарегистрирован: 12.10.2005
Сообщения: 2488
Откуда: Москва

СообщениеДобавлено: Чт Мар 23, 2017 16:35 23.03.2017    Заголовок сообщения: Ответить с цитатой

printdee писал(а):
Тут еще один момент, который я только сейчас понял:
настройки выполняются из программы, но использует их именно служба харвестера, поэтому даже если юзер не видит настройки - по факту служба выполняется от имени системы, и без проблем читает эти настройки.

Да, именно так. Естественно, служба должна выполняться от имени аккаунта, у которого есть доступ и в реестр и к БД.
_________________
Любой путь начинается с первого шага
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов PrintStore.ru - система учета расходных материалов -> Общие вопросы Часовой пояс: GMT + 4
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group