[ОТВЕТИТЬ]
04.03.2016 20:23
LLCCSK
 
Всем здравствуйте!

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

Конфигурация 1с: УТ 10.3 доработанная...
Драйвера для весов ставятся нормально.
Используются библиотеки ForCas.ocx / ForCas2.dll и сопутствующие...

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

Причем на сервере- контроллере домена товар из 1с в весы может выгрузить только админ домена... Обычные пользователи и даже локальные админы получают ошибку об отсутствии связи...

Есть ли решение этой проблемы?
04.03.2016 22:51
OlegON
 
Цитата:
LLCCSK Причем на сервере- контроллере домена товар из 1с в весы может выгрузить только админ домена...



Вы определенно очень любите проблемы создавать...

Контроллер домена пользователь даже видеть не должен. Дышать на него.
И никакого софта там и близко быть не должно. Копать необходимо в сторону политик домена, но для начала хорошо бы проверить телнетом возможность подключения и привести сюда, что не получилось.
05.03.2016 18:06
LLCCSK
 
Цитата:
Контроллер домена пользователь даже видеть не должен.
А пользователи и не видят, это наш админ проверял все варианты. И вот выяснилось что только из-под админа домена на самом домене выгрузка из 1с в весы идёт.

Цитата:
И никакого софта там и близко быть не должно.
1с там установлено т.к. планировался вариант запуска 1с с сервера, в режиме виртуализации приложения что ли... Сам этого не касался, поэтому точно не в курсе.

Телнетом проверять с юзерских компов? По стандартному адресу:порту весов? После праздника проверим, благодарю.
10.03.2016 15:34
LLCCSK
 
Цитата:
OlegON Копать необходимо в сторону политик домена
А не подскажите в сторону каких именно политик копать? Просто доменом не я занимаюсь, хотелось бы указать админу этого домена где именно рыть...

Цитата:
OlegON для начала хорошо бы проверить телнетом возможность подключения и привести сюда, что не получилось.
Проверил, телнетом к весам подцепиться можно, соединение осуществляется...

Благодарю!
11.03.2016 16:25
Micle
 
Копать надо не политики, а права пользователей домена. Попробуйте нужных пользователей включить в группу "Пользователи DCOM". Для того чтобы пользователь вступил в обновлённые права ему нужно перелогинится.

Если не получится, ищите "оригинал" ошибки... А не его пользовательскую замену. Полагаю, там будт что то виндовое похожее на отказ в доступе или что то подобное с кодом 0x8#########. Нужен этот код. Это и есть отправная точка в поиске проблемы.
12.03.2016 13:49
LLCCSK
 
Цитата:
Micle Попробуйте нужных пользователей включить в группу "Пользователи DCOM".
Уже включили. Не помогло.

Цитата:
Micle Если не получится, ищите "оригинал" ошибки... А не его пользовательскую замену. Полагаю, там будт что то виндовое похожее на отказ в доступе или что то подобное с кодом 0x8#########. Нужен этот код. Это и есть отправная точка в поиске проблемы.
Под "оригиналом" вы подразумеваете код который сообщают весы при отказе? Или что именно?
12.03.2016 13:51
LLCCSK
 
Цитата:
Micle что то виндовое похожее на отказ в доступе или что то подобное с кодом 0x8#########. Нужен этот код. Это и есть отправная точка в поиске проблемы.
Где именно искать этот код ошибки?
14.03.2016 08:12
Micle
 
Цитата:
LLCCSK Где именно искать этот код ошибки?
Полагаю, искать надо в 1с, в том месте, где выводится сообщение.

Цитата:
LLCCSK не идет выгрузка из 1с на весы... пишет нет связи...
16.03.2016 05:04
LLCCSK
 
Позже приведу код подключения с логом сообщений COM-объекта. В целом, проблема в том что при инициализации (метод INIT()) нет возвращаемого значения. Согласно документации "1" - успех "-1" - отказ. При инициализации от пользователя (даже локального админа) возвращаемое значение отсутствует. Через ProcessExplorer отказов в доступе не наблюдается.
16.03.2016 07:34
LLCCSK
 
Код обработки (только часть с инициализацией и соединением)
Цитата:
Сообщить("================================================");
Весы=справочники.Весы.НайтиПоКоду("000000004");
Попытка
LP = ПолучитьComОбъект(,"ForCas2.ForCas");
Сообщить("Объект обмена с весами уже существует.");
Исключение
Сообщить("Создание нового объекта обмена с весами.");
Попытка
LP = Новый ComОбъект("ForCas2.ForCas");
Исключение
Сообщить("Драйвер весов CL 5000 не установлен в системе");
КонецПопытки
КонецПопытки;
Попытка
рез=LP.Init();
Сообщить("Состояние инициализации:"+рез);
Сообщить("Состояние объекта обмена:"+LP.State());
lp._GetTransStatus(Весы.Адрес);
Сообщить("Результат инициализации:"+LP.Data());
Исключение
Сообщить("Ошибка инициализации "+Весы.Наименование);
КонецПопытки;
Попытка
LP.Connection(Весы.Адрес, Весы.Порт, 1, 5010 );
Исключение
Сообщить("Нет связи с весами! "+Весы.Наименование);
Сообщить("Ошибка: "+LP.State);
КонецПопытки;
//код загрузки
//конец кода загрузки
Попытка
Сообщить("Отключение от весов "+Весы.Наименование);
LP.DisconnectAll();
Сообщить("Состояние объекта обмена:"+LP.State);
Исключение
Сообщить("Ошибка отключения от весов");
КонецПопытки;
LP.DeInit();
Результат работы обработки.
Цитата:
================================================
Создание нового объекта обмена с весами.
Состояние инициализации:
Состояние объекта обмена:0
Результат инициализации:65, "172.16.173.52", 0, "Find not ip of scale"
Отключение от весов Весы_2
Состояние объекта обмена:0
16.03.2016 08:34
Micle
 
у весов действительно такой адрес?
172.16.173.52
16.03.2016 09:42
LLCCSK
 
Совершенно верно. Вся сеть лежит в диапазоне 172.16.173.1-172.16.173.254.
У весов адреса 172.16.173.51-172.16.173.59
(IP адресация достались в наследство, изменить на более привычный диапазон не представляется возможным из-за "удаленщиков")
16.03.2016 11:07
KirillHome
 
Вообще на Infostatr-е есть такие слова
Цитата:
Разобрался. Нужно копировать не только библиотеки ForCas.ocx / ForCas2.dll а все дллки из папки с драйверами...
Возможно, что часть DLL лежит в месте, доступном только администратору домена?
16.03.2016 12:16
Micle
 
Цитата:
KirillHome Вообще на Infostatr-е есть такие слова


Возможно, что часть DLL лежит в месте, доступном только администратору домена?
Это вряд ли.

Цитата:
LLCCSK Результат инициализации:65, "172.16.173.52", 0, "Find not ip of scale"
А что говорит документация на тему расшифровки сего сообщения ?
16.03.2016 12:44
LLCCSK
 
Цитата:
KirillHome Возможно, что часть DLL лежит в месте, доступном только администратору домена?
Данные дллки лежат на каждом компьютере где работают с весами локально:
на x86-системах в каталоге C:\Windows\System32\
на х64-системах в каталоге C:\Windows\SysWOW64\

И их регистрация утилитой regsvr32 произведена именно из этих каталогов.
17.03.2016 03:22
LLCCSK
 
Цитата:
Micle А что говорит документация на тему расшифровки сего сообщения ?
Документация на сообщения крайне скупа. Написано в ней ровно то же самое что и в сообщении.

Доступность ВСЕХ dll из пакета для пользователя домена проверена.
17.03.2016 03:26
LLCCSK
 
Цитата:
KirillHome Возможно, что часть DLL лежит в месте, доступном только администратору домена?
Вот тут я подозреваю попытку обратиться к какой-то функции доступной только администратору. но к какой???
17.03.2016 06:49
EugeneT
 
Попробовать дать юзеру на время права локального админа, проверить работу и права отобрать. Вероятно процедура пытается куда-то писать (в реестр или в каталог на который у юзера нет прав)
17.03.2016 10:07
LLCCSK
 
Цитата:
EugeneT Попробовать дать юзеру на время права локального админа, проверить работу и права отобрать. Вероятно процедура пытается куда-то писать (в реестр или в каталог на который у юзера нет прав)
Дык есть у меня права локального админа. Права админа домена только у одного пользователя. и применяются только в целях настройки (из под него никто не работает ).
Чуть раньше я писал - что через ПроцессЭксплоер отказов в доступе я не нашел ни в реестре ни в файлах.
17.03.2016 11:01
Micle
 
Странное сообщение какое то... по поводу "IP of sclae" ... я бы туда копал. Вплоть до анализа сетевой активности...
17.03.2016 11:25
LLCCSK
 
Попробую поковырять в эту сторону.
18.03.2016 05:32
LLCCSK
 
До сетевого трафика не дошел ;). Проблему решил созданием COM-приложения через службу компонентов с правами запуска от имени локальной службы. в режиме теста работает. Но пока нет уверенности в последовательности действий. На одном компе получилось запустить отменив регистрацию ForCas.dll и установив только com-приложение. на втором - не уверен (занят он сильно, и не получается "в чистую" его протестировать). В общем примерное направление поисков/размышлений/экспериментов есть.
18.03.2016 10:06
Micle
 
Цитата:
LLCCSK Проблему решил созданием COM-приложения
Значит проблема не в домене а в несоответствии битности библиотеки и приложения его использующего.
26.04.2016 13:47
LLCCSK
 
Битность операционки совсем ничего не решает. тестировалось на win7,8.1,10,2012 r2 клиентские ОСи были и х86 и х64, проблема полностью идентична - вне домена работает только под админом, в домене только под админом домена.
Вопрос в каких-то правах админа. Потому-что, после "чистого" теста, COM-приложение устанавливаемое через GPO не отрабатывает пока не укажешь его запуск в качестве локальной службы (то есть с неограниченными правами). Частичный результат, нет полной автоматизации. Но это проще чем всем давать права админа, а отказываться от домена - "слегка" неправильная для меня мысль.
Всем спасибо за обсуждение. Тему наверное можно закрывать.
07.07.2016 12:38
Артём
 
А часть с загрузкой в весы - можете выложить? :)
Опции темы


Часовой пояс GMT +3, время: 20:56.

 

Форум сделан на основе vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.