|
ИмяКомпьютера(), как получить имя терминала а не сервера 1С?
| ☑ |
0
pvase
06.02.19
✎
11:16
|
ИмяКомпьютера() - возвращает сетевое имя сервера 1с, на котором работает база. Надо бы получить имя компьютера, с которого произошел запуск клиента 1С.
|
|
1
Вафель
06.02.19
✎
11:17
|
в гугл
|
|
2
ptiz
06.02.19
✎
11:21
|
См. в СП - ИмяКомпьютера.
|
|
3
ДенисЧ
06.02.19
✎
11:22
|
А на клиенте такое спросить - не вариант?
|
|
4
spiller26
06.02.19
✎
11:24
|
|
|
5
pvase
06.02.19
✎
15:44
|
Достаточно посмотреть переменные: %CLIENTNAME% -имя компьютера подключенного по терминалу.
%COMPUTERNAME% - Имя терминала.
%USERNAME% - Имя входа на терминал.
Теперь осталось как то прочитать эти переменные без запуска командной строки.
|
|
6
ptiz
06.02.19
✎
15:57
|
(5) Всё-таки, чем не подходит свойство ИмяКомпьютера у Сеанса?
ТекНомерСеанса = НомерСеансаИнформационнойБазы();
Массив = ПолучитьСеансыИнформационнойБазы();
Для каждого Сеанс Из Массив Цикл
Если Сеанс.НомерСеанса = ТекНомерСеанса Тогда
Сообщить(Сеанс.ИмяКомпьютера);
Прервать;
КонецЕсли;
КонецЦикла;
|
|
7
pvase
07.02.19
✎
19:44
|
(6) Спасибо, то что надо.
Единственное, можно узнать еще имя компьютера, который подключен к терминалу:
WshShell = Новый COMОбъект("Wscript.Shell");
Имя_Домена = WshShell.ExpandEnvironmentStrings("%USERDOMAIN%");
Имя_Клиента = WshShell.ExpandEnvironmentStrings("%CLIENTNAME%");
|
|