Воскресенье, 12.05.2024, 23:35
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Основной » Проблемные ситуации » ПИР 3.87.1 GoldParserForNet.Parser и ограниченный пользовате
ПИР 3.87.1 GoldParserForNet.Parser и ограниченный пользовате
ЯнгертанДата: Четверг, 08.12.2016, 10:36 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 8
Репутация: 4
Статус: Оффлайн
Компонента GoldParserForNet.Parser зарегистрирована под пользователем ОС с правами администратора, под этим пользователем она корректно отрабатывает, преобразуя запрос в дерево. При попытке преобразовать запрос в дерево под пользователем ОС без прав администратора, возникает ошибка:

Код
Microsoft .NET Framework Assembly Registration Utility 4.0.30319.34209
для Microsoft .NET Framework 4.0.30319.34209<br / <img src="/.s/sm/1/angry.gif" border="0" align="absmiddle" alt="angry" /> C) Корпорация Майкрософт (Microsoft Corporation).  Все права защищены.

RegAsm : error RA0000 : При записи регистрационной информации в реестр произошла ошибка. Для использования выбранных параметров требуются права администратора. Воспользуйтесь командной строкой администрирования для завершения этих задач.

Не удалось зарегистривать COM-Net-компоненту GoldParserForNet.Parser. Запустите приложение от имени администратора


При этом, если зайти под обычным пользователем ОС, то в окне регистрации компоненты она отмечена, как не зарегистрированная, а под пользователем ОС с админ правами обработка регистрации компонент говорит, что она зарегистрирована.

Пытаемся выполнить эту операцию в терминале, работающем под управлением Windows Server 2012 R2 Standart

Есть какая-то возможность обойти это ограничение?

P.S. И есть еще одно ограничение у нового парсера, он не совместим с ОС Windows XP. Можете выложить версию подсистемы, в которой использовалась старая версия парсера?


Сообщение отредактировал Янгертан - Четверг, 08.12.2016, 10:40
 
tormozitДата: Четверг, 08.12.2016, 22:47 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 6199
Репутация: 159
Статус: Онлайн
1. Новый парсер GoldParserEngine и программный код, на него опирающийся, стали уже несовместимыми со старым парсером GoldParserEngine. К сожалению действительно пришлось пойти на потерю совместимости парсера с Windows XP, на котором .Net Framework 4.5 не поддерживается. Шансы на реализацию нового парсера на .Net Framework 4 моими силами очень маленькие. Но исходники опубликованы, так что возможно кто то другой переделает проект на .Net Framework 4

2. По проблеме с регистрацией Net компоненты GoldParserEngine. Выполнялась ли административная регистрация компонент по инструкции http://devtool1c.ucoz.ru/index/ustanovka_i_obnovlenie/0-7 ? Где расположен файл компоненты? Имеет ли к этому файлу доступ пользователь испытывающий проблему?
 
ЯнгертанДата: Пятница, 09.12.2016, 16:30 | Сообщение # 3
Рядовой
Группа: Проверенные
Сообщений: 8
Репутация: 4
Статус: Оффлайн
1. Не обязательно портировать актуальную версию компоненты. Мне было бы достаточно иметь возможность скачать старую версию инструментов, которые совместимы с WindowsXP. К сожалению я у себя не хранил все версии инструментов.

2. Если речь идет об инструкции: 
Цитата
Если текущий пользователь ОС не является администратором или запуск приложения выполнен с контролем учетных записей (User acccount control),
то для работы некоторых функций инструментов требуется зарегистрировать
в ОС ряд COM компонент с помощью повышенных привилегий. Для этого
необходимо запустить предприятие от имени администратора (run as
administrator) и командой "Регистрация COM компонент (ИР)" открыть форму
регистрации и нажать там Выполнить.

То наши действия были аналогичными. Единственное отличие в том, что 1С мы запускали через кнопку запуска под администратором, которая находится на панели обработки "Регистрация COM компонент". Компоненты лежат в каталоге "C:\Program Files (x86)\1cv8\common". Доступ на просмотр этого каталога у пользователя точно есть, а вот на чтение самой компоненты права отсутствовали. Попробуем выдать права на сам файл, о результатах отпишусь.
 
tormozitДата: Пятница, 09.12.2016, 23:12 | Сообщение # 4
Генералиссимус
Группа: Администраторы
Сообщений: 6199
Репутация: 159
Статус: Онлайн
У каталога "C:\Program Files (x86)\1cv8\common" включено наследование прав для дочерних объектов? Файлы компонент программа помещает путем перемещения, создавая их сначала в стандартном временном каталоге.
 
tormozitДата: Суббота, 10.12.2016, 19:53 | Сообщение # 5
Генералиссимус
Группа: Администраторы
Сообщений: 6199
Репутация: 159
Статус: Онлайн
Последнюю версию с поддержкой Windows XP выложил  в разделе Файлы http://devtool1c.ucoz.ru/load....-1-0-15
 
ЯнгертанДата: Понедельник, 12.12.2016, 09:47 | Сообщение # 6
Рядовой
Группа: Проверенные
Сообщений: 8
Репутация: 4
Статус: Оффлайн
Цитата tormozit ()
У каталога "C:\Program Files (x86)\1cv8\common" включено наследование прав для дочерних объектов?
На сам каталог всем пользователям выданы полные права. Но, при копировании обработкой, файл помещается в этот каталог без брав родителя. Похоже, что для файла отключено наследование прав от родителя. И такая же проблема с компонентой "StrMatchExtension.dll", для нее тоже права не наследуются от родителя.

Цитата tormozit ()
Последнюю версию с поддержкой Windows XP выложил в разделе Файлы http://devtool1c.ucoz.ru/load....-1-0-15
Спасибо

UPD.
Проверил на другом сервере, где компоненты не были зарегистрированы. Запустил  регистрацию под пользователем ОС без админ. прав. Право на добавление/изменение в папке есть. В момент регистрации, файлы копируются в эту папку назначения, но без наследования прав родителя.
После того, как мы под админом установили компоненты, и выдали права для всех пользователей, у пользователя ОС без админ.  прав заработало преобразование запроса в дерево.


Сообщение отредактировал Янгертан - Понедельник, 12.12.2016, 17:28
 
tormozitДата: Понедельник, 12.12.2016, 21:41 | Сообщение # 7
Генералиссимус
Группа: Администраторы
Сообщений: 6199
Репутация: 159
Статус: Онлайн
На Windows 10 64b изучил поведение функций КопироватьФайл и ПереместитьФайл платформы, используемых при установке компонент. Файл копируется и перемещается с наследованием прав (при включенном наследовании у папки-приемника). В общем то это стандартное поведение для всех файловых менеджеров. А вот сохранение прав на файл (игнорирование наследования от приемника)  при таких операциях нештатное поведение и обычно включается дополнительным настройками (например в Total Comander есть флажок в диалоге копирования файлов).

Открой свойства папки-приемника Безопасность/Дополнительно в таблице разрешений найди строку с субъектом Пользователи. Там должен быть установлен режим "Для этой папки, ее подпапок и файлов" в колонке "Применяется к". Если он установлен, то скопируй (например проводником) любой личный файл пользователя в эту папку и посмотри, какие ему права установятся.
 
ЯнгертанДата: Вторник, 13.12.2016, 00:56 | Сообщение # 8
Рядовой
Группа: Проверенные
Сообщений: 8
Репутация: 4
Статус: Оффлайн
На личном компьютере с Win10 x64 аналогичная ситуация. После установки платформы никаких изменений в права доступа не вносил. Вот параметры доступа к папке common:


Для пользователя включено наследование прав для подчиненных объектов.

Вот права на файлы, установленные инструментами:

А вот права на файлы, помещенные в каталог при установке платформы:

На этих скринах видно, что при установке файлу права выданы на группы пользователей "Администраторы" , "Пользователи". В случае с установленными компонентами, права выданы пользователю установившему компоненту и группе, к которой он принадлежит.
После перемещения файлов компонент с помощью Total Commander'a получил следующие права на файл:

Видно, что набор прав больше чем у файлов, созданных в процессе установки.
Прикрепления: 1309896.jpg (163.8 Kb) · 7557783.jpg (109.4 Kb) · 6517453.jpg (108.4 Kb) · 4710928.jpg (123.2 Kb) · 1260930.jpg (150.9 Kb)
 
ЯнгертанДата: Вторник, 13.12.2016, 01:25 | Сообщение # 9
Рядовой
Группа: Проверенные
Сообщений: 8
Репутация: 4
Статус: Оффлайн
Для чистоты эксперимента удалил все файлы компонент и выполнил повторную регистрацию под правами администратора. В итоге получил следующие права
на файл:


Права вернулись к исходному состоянию. Эту операцию проводил на платформе 8.3.8.1652. Дабы отбросить проблемы, связанные с платформой, решил повторить опыт на последней стабильной на данный момент платформой 8.3.9.1850. Результат:


Результат аналогичный, так что проблема не в платформе. Чтоб окончательно развеять сомнения по отношению к платформе, попробовал сделать все то же на платформе 8.2.19.130. Результат аналогичен, не хочу повторять еще раз этот скрин.
Похоже, это все же фишка 1С Предприятия.
Прикрепления: 4278534.jpg (109.2 Kb) · 3309011.jpg (109.5 Kb)
 
tormozitДата: Вторник, 13.12.2016, 22:11 | Сообщение # 10
Генералиссимус
Группа: Администраторы
Сообщений: 6199
Репутация: 159
Статус: Онлайн
Спасибо за помощь. Разобрался. Метод платформы ПереместитьФайл работает также как и команда "move" ОС Windows, а она при перемещении файла сохраняет его права строго, т.е. не применяет наследование от папки-приемника. А метод платформы СкопироватьФайл в паре с командой "copy" применяет наследование от папки-приемника. В следующей версии я переделаю перемещение файлов через копирование и удаление.
 
tormozitДата: Воскресенье, 18.12.2016, 22:15 | Сообщение # 11
Генералиссимус
Группа: Администраторы
Сообщений: 6199
Репутация: 159
Статус: Онлайн
Проблема наследования прав решена в 3.89
 
Форум » Основной » Проблемные ситуации » ПИР 3.87.1 GoldParserForNet.Parser и ограниченный пользовате
  • Страница 1 из 1
  • 1
Поиск: