|
|
С какого компа запущена 1С |
☑ |
|
0
АлекРП
05.01.07
✎
23:58
|
я в сетевой настройке полный ламер. в журнале регистрации, если заходить в терминальном доступе отражается сервак, а мне надо, чтобы показывался именно тот комп, который подрубается к серваку через сервер терминалов. как это сделать?
|
|
|
1
Neco
06.01.07
✎
00:17
|
В терминале никак. Кто "крыса" выясняй по имени пользователя в журнале регистрации.
|
|
|
2
Варвар
06.01.07
✎
00:18
|
(1) ты в этом уверен что никак?
|
|
|
3
АлекРП
06.01.07
✎
00:20
|
(2) Ага. Есть мысля...
|
|
|
4
Варвар
06.01.07
✎
00:21
|
(3) да и реализации были.
|
|
|
5
Neco
06.01.07
✎
00:22
|
(2) В 1Ске никак. Но в виндовом журнале всегда можно порыться
|
|
|
6
АлекРП
06.01.07
✎
00:22
|
(4) каким образом это реализовать?
|
|
|
7
АлекРП
06.01.07
✎
00:25
|
Неужели ни у кого таких проблем не возникало?
|
|
|
8
Варвар
06.01.07
✎
00:35
|
(5) как!
(6) я не знаю, просто видел когдато толи ВК, толи еще чота которое записывало в ЖР именно комп с которого работали.
Названия не помню - есть желание найти - поиск тебе в руки.
В 8-ке я бы реализовал бы записью в ЖР в коде 1С, а определение компа с помощью wsh.
|
|
|
9
Варвар
06.01.07
✎
00:37
|
(8) винда то знает с какого компа юзер работает. Значит надо найти как из нее это выцепить. А записать в ЖР не составляет труда.
|
|
|
10
АлекРП
06.01.07
✎
00:43
|
во скока эту работу можно оценить?
|
|
|
11
shachneff
06.01.07
✎
09:45
|
// Функция возвращает имя текущего компьютера при локальной работе и
// имя терминального клиента при работе по протоколу RDP 5
Функция ИмяТерминальногоКлиента() Экспорт
ClientName = "";
Попытка
scrptCtrl = Новый COMОбъект("MSScriptControl.ScriptControl");
scrptCtrl.language = "vbscript";
scrptCtrl.addcode("
|
|Function GetUser()
|Set WSHShell = CreateObject(""WScript.Shell"")
|Set WshSysEnv = WshShell.Environment(""Process"")
|GetUser = WshSysEnv(""Username"")
|End Function
|
|Function GetClient()
|Set WSHShell = CreateObject(""WScript.Shell"")
|Set WshSysEnv = WshShell.Environment(""Process"")
|GetClient = WshSysEnv(""Clientname"")
|End Function
|");
ClientName = scrptCtrl.run("GetClient");
Если ВРег(ClientName) = "CONSOLE" ИЛИ ClientName = "" ИЛИ ClientName = Неопределено ИЛИ ClientName = Null Тогда // мы работаем локально
Возврат ВРег(ИмяКомпьютера());
Иначе
Возврат ВРег(ClientName);
КонецЕсли;
Исключение
Сообщить("Ошибка обращения к значению переменной окружения CLIENTNAME. Обратитесь к администратору.");
Возврат ВРег(ИмяКомпьютера());
КонецПопытки;
КонецФункции
|
|
|
12
АлекРП
06.01.07
✎
09:56
|
(11) спасибо. в понедельник потестю на работе
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший