Имя: Пароль:
1C
 
Как быть с атрибутом пользователя ПользовательОС
0 Гений 1С
 
гуру
11.01.07
18:03
Господа, помогите, я уже на пределе.
У пользователя атрибут ПользовательОС не считывается, выдает ошибку:

Ошибка при получении значения атрибута контекста (ПользовательОС), хотя в конфигураторе все нормально показывает: Неудачная попытка найти имя пользователя ОС по системному идентификатору

С другой стороны и установить я ее не могу, выдает ошибку.

А как вообще должна выглядеть строка, так:  DOMEN\LOGIN или как?

Парюсь не-по-детски.
1 Гений 1С
 
гуру
11.01.07
18:20
Зы, по ходу разобрался, дожно быть \\DOMEN\LOGIN
2 Гений 1С
 
гуру
12.01.07
10:34
Пардон, господа, разобрался не до конца.
Как получить идентификатор из реквизита ПользовательОС, т.е. там хранится ГУИД, а мне нужно типа \\DOMEN\LOGIN
Простое считывание УЗ.ПользовательОС выдает ошибку: Неудачная попытка найти имя пользователя ОС по системному идентификатору
3 ABCD
 
12.01.07
13:07
АутентификацияОС
А это свойство у тебя установлено?
4 Гений 1С
 
гуру
12.01.07
14:25
(3) Да, установлено. Я научился устанавливать виндоус-аутентификацию, но не могу прочитать текущего пользователя (пишу конфу по назначению прав пользователям в разных базах, их у нас штук 40). Нужно прочиттаь начальное состояние.
5 Гений 1С
 
гуру
12.01.07
18:05
апп
6 Гений 1С
 
гуру
15.01.07
10:27
upp
7 а лю 427
 
15.01.07
10:28
а головой постучать?
8 Гений 1С
 
гуру
15.01.07
10:46
(7) не помогает
9 Гений 1С
 
гуру
15.01.07
17:01
Ну поможыте же кто-нибудь, придется все логины винды переписывать...

Кстатти обработка "manage users" с проклаба тоже не показывает пользователя ОС.
10 Гений 1С
 
гуру
15.01.07
17:26
ну же, знатоки!
11 Terv
 
15.01.07
17:40
(2) хм, а я то думал SID
12 shachneff
 
15.01.07
18:10
Использовать ВК или скрипт, смотреть MSDN на предмет функции типа FindDomainUserByXXX()
13 Гений 1С
 
гуру
15.01.07
18:34
(12) а почему 1це это не умеет, это у всех не умеет (запустите обработку с проклаба "manage users", она не показывает пользователя, или только у меня на 12 релизе, при моей структуре домена???
14 shachneff
 
15.01.07
18:37
(13) Уточни вопрос. Что нужно получить на выходе?
15 shachneff
 
15.01.07
18:42
1С хранит ссылку на пользователя домена (или просто компьютера) в виде GUID. Это самый обычный GUID, являющийся UID пользователя в некой среде. Каждый раз, когда в списке пользователей ты обращаешься к этой ссылке, в текущей системе производится поиск имени пользователя по GUID. В случае, если ссылка разрешена, имя и домен отображаются.
Если в домене удалить юзера, либо лишить ваш компьютер доступа к домену, на пользователя которого указывала ссылка, ядро 1С не сможет разрешить ссылку и покажет GUID.
Существует множество решений на Дельфи или на С++, которые помогают вытащить ссылку на юзера по его UID (или SID).
16 shachneff
 
15.01.07
18:44
а еще интересно, как 1С разрешает эту ссылку. Может кто посмотрит таблицу импорта 1С-ки на предмет интересных функций?
17 shuhard
 
15.01.07
21:09
странно , у меня для локального юзера выдает \\CFS\excadmin:

МассивЮзеров=ПользователиИнформационнойБазы.ПолучитьПользователей();
   Для Каждого Юзер Из МассивЮзеров Цикл
       Сообщить(Юзер.ПользовательОС);    
  КонецЦикла;

1С:Предприятие 8.0 (8.0.16.2)
18 shuhard
 
15.01.07
22:03
19 Гений 1С
 
гуру
16.01.07
10:06
(17) У меня на 12-м релизе не работает этот код, выдает вот такую хрень:

{Форма.Форма(7)}: Ошибка при получении значения атрибута контекста (ПользовательОС): Неудачная попытка найти имя пользователя ОС по системному идентификатору
       Сообщить(Юзер.ПользовательОС);    
по причине:
Неудачная попытка найти имя пользователя ОС по системному идентификатору
20 Волшебник
 
модератор
16.01.07
10:10
(19) Почему такой древний релиз? На дворе уже 17, кажись
21 Гений 1С
 
гуру
16.01.07
10:11
(20) Проверил, на 8.1 работает. Релиз не от меня зависит... окей, дело именно в релизе. Вопрос исчерпан.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс