Windows 2008, команды

[ Версия для печати ]
Добавить в Telegram Добавить в Twitter Добавить в Вконтакте Добавить в Одноклассники
  [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]
Zerax
7.11.2012 - 10:23
Статус: Offline


Юморист

Регистрация: 28.06.05
Сообщений: 565
0
Суть:
Есть сервак (W2008 SE + терминальные юзеры) раз в сутки запускается команда logoff для всех (22:50).
Потом делается спец задача у спец проги...(с 23:00 до ~23:30)
Потом нада както чёбы автоматом залогинился определённый юзер и в довес запустилась 1с`ка (01:00)
Как???

Это сообщение отредактировал Zerax - 7.11.2012 - 10:24
 
[^]
Yap
[x]



Продам слона

Регистрация: 10.12.04
Сообщений: 1488
 
[^]
ВЕРХОВЦЕВ
8.11.2012 - 00:11
2
Статус: Offline


OBEY

Регистрация: 4.06.08
Сообщений: 1056
Как вариант - через mstsc.exe создать ярлык со всеми параметрами юзера и добавить его в шедулер, а 1с просто в автозагрузку этого пользователя.
 
[^]
toper
8.11.2012 - 06:32
1
Статус: Offline


Мы прибыле к вам с миром, таг... пасрать

Регистрация: 17.11.05
Сообщений: 5051
Zerax
юзай примочку от мелкомяхких
http://technet.microsoft.com/en-us/sysinte...s/bb963905.aspx

а насчёт 1с - её ярлык в автозапуск юзеру

автоввод пароля и логин в 1с можно макрососписалкой любой сделать думаю (типа autoit), которая будет запускаться батником сразу после 1с
 
[^]
amdx
8.11.2012 - 08:20
1
Статус: Offline


Программер

Регистрация: 20.05.11
Сообщений: 2692
Цитата
автоввод пароля и логин в 1с можно макрососписалкой любой сделать думаю (типа autoit), которая будет запускаться батником сразу после 1с

Зачем такой изврат? 1С что 7, что 8 - прекрасно принимает имя пользователя и пароль через параметр командной строки. Туда же можно пихнуть путь базы данных или параметры ее подключения - и тогда она может запускаться очень тихо и никого ни о чем не спрашивая.
 
[^]
Zerax
9.11.2012 - 08:07
1
Статус: Offline


Юморист

Регистрация: 28.06.05
Сообщений: 565
Цитата (amdx @ 8.11.2012 - 08:20)
запускаться очень тихо и никого ни о чем не спрашивая.

Это конечно заибись...
Но как в эту 1с ку потом подлезть???
Хотя можно как-то стартонуть 1с`ку под опред. юзером, так чё-бы когда этот юзер подключался к своей учётки она у него была открыта и он смогбы в ней работать, а не висела только в процессах???

p.s. Кстати я тебе 300р. торчу... rulez.gif
 
[^]
kocapb
9.11.2012 - 08:11
0
Статус: Offline


Ярила

Регистрация: 21.07.11
Сообщений: 1054
ВЕРХОВЦЕВ дело говорит, так и надо делать.
 
[^]
JohnDow
9.11.2012 - 08:15
1
Статус: Offline


просто хороший человек

Регистрация: 1.10.12
Сообщений: 23750
Хм.. мне кажется командой логофф Вы пытаетесь очистить сеесии всех юзеров что не отключились из 1с. Это забивание гоздя микроскопом, гораздо проще делать это самими командами адын эс.

А по поводу запуска 1с потом:

7.7
"Для начала приведу ключи запуска программы из командной строки (как не странно, много раз с удивлением убеждался, что не всем они известны) :

1cv7.exe MODE [ /M | /D<Path> | /U<Path> | /N<Name> | /P<Pass> ],

где MODE - режим запуска, может принимать только одно из трех значений :

config - режим конфигуратора;

debug - режим отладчика;

enterprise - нормальный (рабочий) режим.

следующие ключи опциональны :

/M - запуск программы в монопольном режиме;

/D - каталог базы данных;

/U - рабочий каталог пользователя (каталог из списка пользователей игнорируется);

/N - имя пользователя;

/P - пароль пользователя;

Например при выполнении такой команды : 1cv7 enterprise /DD:\Dbase /NИванов /P123,"

В 8ке что то подобное не помню.

И там уже прописать что при начале работы системы с тамик то логином- сделать то, то и вот то

 
[^]
Zerax
9.11.2012 - 08:27
0
Статус: Offline


Юморист

Регистрация: 28.06.05
Сообщений: 565
Цитата (JohnDow @ 9.11.2012 - 08:15)
гораздо проще делать это самими командами адын эс.

Ну-ка скажите мне команду для корректного закрытия 1с 7???

P.S. Как запускать 1с через батник я знаю.
 
[^]
PoM4Er
9.11.2012 - 08:37
0
Статус: Offline


Ярила

Регистрация: 3.06.10
Сообщений: 2569
Да кстати версия 7.7 или 8? 1С???

Это сообщение отредактировал PoM4Er - 9.11.2012 - 08:39
 
[^]
Zerax
9.11.2012 - 08:41
0
Статус: Offline


Юморист

Регистрация: 28.06.05
Сообщений: 565
Цитата (PoM4Er @ 9.11.2012 - 08:37)
Да кстати версия 7.7 или 8? 1С???

7.7
 
[^]
PoM4Er
9.11.2012 - 08:44
0
Статус: Offline


Ярила

Регистрация: 3.06.10
Сообщений: 2569
Если есть штатный программер 1С то он поймет и подкореткирует , в ГМ
Процедура

Цитата
Процедура Чат() Экспорт
    Перем КонтекстФормы;
   
    //ЧАТ

    Текст = СоздатьОбъект("Текст");
    Каталог=КаталогИБ()+"Chat\";
    User=ИмяПользователя();
   
    Если ФС.СуществуетФайл(Каталог+User+".ch")=1 Тогда
        Текст.Открыть(Каталог+User+".ch");
        Если Текст.КоличествоСтрок()>0 Тогда
            Для Стр=1 По Текст.КоличествоСтрок() Цикл
                с = СокрЛП(Текст.ПолучитьСтроку(Стр));
                маркер = ".";
                Если с<>"" Тогда
                    Если Найти(с,"(i)")<>0 ТОгда
                        маркер = "i";
                    КонецЕсли;
                    Если Найти(с,"(!)")<>0 ТОгда
                        маркер = "!";
                    КонецЕсли;
                    Если Найти(с,"(!!)")<>0 ТОгда
                        маркер = "!!";
                    КонецЕсли;
                    Если Найти(с,"(!!!)")<>0 ТОгда
                        маркер = "!!!";
                    КонецЕсли;
                    Сообщить(с,маркер);
                    Сигнал();
                    Если Найти(с,"ЗавершитьРаботуСистемы")<>0 Тогда
                        предупреждение("Выполняется принудительный выход из системы",5);
                        пар = сред(с,найти(с,"(")+1,найти(с,")")-найти(с,"(")-1);
                        ЗавершитьРаботуСистемы(число(пар));
                    ИначеЕсли Найти(с,"ЗапуститьПриложение")<>0 Тогда
                        пар = сред(с,найти(с,"(")+1,найти(с,")")-найти(с,"(")-1);
                        ЗапуститьПриложение(пар);
                    ИначеЕсли Найти(с,"ОчиститьОкноСообщений")<>0 Тогда
                        пар = сред(с,найти(с,"(")+1,найти(с,")")-найти(с,"(")-1);
                        ОчиститьОкноСообщений();
                    КонецЕсли;
                КонецЕсли;
            КонецЦикла;
            Текст.Очистить();
            Текст.Записать(Каталог+User+".ch");
        КонецЕсли;
    Иначе
        ФС.КопироватьФайл(КаталогПользователя()+"1Cv7.LCK", Каталог+User+".ch", 1);
    КонецЕсли;
   
    Если БлокнотРедактируется=1  Тогда
        Возврат;
    КонецЕсли;
   
    Блокнот=СоздатьОбъект("Справочник.Блокнот");
    Надо=0;
   
    Блокнот.НайтиПоКоду(ИмяПользователя());
    Если (Блокнот.Выбран()=0) ИЛИ (Блокнот.ЭтоГруппа()=0) Тогда
        Возврат;
    КонецЕсли;
    Блокнот.ИспользоватьРодителя(Блокнот.ТекущийЭлемент());
    Блокнот.ВыбратьЭлементы();
    ТД = ТекущаяДата();
    Пока Блокнот.ПолучитьЭлемент()=1 Цикл
        Если (Блокнот.Повторить=1) И (ТекущееВремя()>=Блокнот.ВремяПовтора) Тогда
            Надо=1;
            Прервать;
        КонецЕсли;
        Если ТД > Блокнот.__ДатаПоказа Тогда
            ДатаОчередногоПоказа = ДатаОчередногоПоказа(Блокнот.ТекущийЭлемент());
            Если (ДатаОчередногоПоказа=ТД)И(ТекущееВремя()>=Блокнот.Время) Тогда
                Надо = 1;
                Прервать;
            ИначеЕсли (ТД>ДатаОчередногоПоказа)И((Блокнот.Периодичность<>0)ИЛИ(Число(Блокнот.__ДатаПоказа)=0)) Тогда
                Надо = 1;
                Прервать;
            КонецЕсли;
        КонецЕсли;
    КонецЦикла;
   
    Если Надо=1 Тогда
        Блокнот.__ДатаПоказа = ТекущаяДата();
        Блокнот.Повторить=0;
        Блокнот.Записать();
        ОткрытьФорму(Блокнот.ТекущийЭлемент(),КонтекстФормы);
        КонтекстФормы.Форма.ИспользоватьСлой("Просмотр",1);
    КонецЕсли;
КонецПроцедуры


Принудительное отключение пользователей от базы, без последующей переиндексации


Похожий код еще ТУТ есть.
Вообщем отключение делать лучше по средствам самой 1ски обработкой или процедурой.
Если спец зажача спец проги я поразумеваю архивацию, то Юзай прогу CobianBackUp исключай 1Cv7.$ui и в каталоге SYSLOG 1Cv7.mlg, 1cv7evt.txt, links.tmp и все, остальное все копируется и архивируеться прекрасно даже при висящих юзверях.
mlg - журнал регистрации

Это сообщение отредактировал PoM4Er - 9.11.2012 - 08:57
 
[^]
amdx
9.11.2012 - 09:05
1
Статус: Offline


Программер

Регистрация: 20.05.11
Сообщений: 2692
Я у себя делал так
Код

//******************************************************************************
//
Процедура Ожидание()
Если ВремяОтключения > 0 Тогда
 ВремяОтключения = ВремяОтключения-1;
КонецЕсли;
Если (ВремяОтключения=0) и (Принудительно=1) Тогда
 ЗавершитьРаботуСистемы(0);
ИначеЕсли (ВремяОтключения=0) и (Принудительно=0) Тогда
 ВремяОтключения = -1;
 Принудительно = 0;
КонецЕсли;
Ч = 0; М = 0; С = 0;
ТекущееВремя(Ч,М,С);
Если С - 3*Цел(С / 3) <> 0 Тогда
 Возврат;
КонецЕсли;
Т = СоздатьОбъект("Текст");
Попытка
 Т.Открыть(".\Sysmsg.dat");
Исключение
 Возврат;
КонецПопытки;

 ИмяП = Т.ПолучитьСтроку(1);
 ПИмяП = Т.ПолучитьСтроку(2);
 Серв = Т.ПолучитьСтроку(3);
 Парам1 = Т.ПолучитьСтроку(4);
 Парам2 = Т.ПолучитьСтроку(5);
 Если (Серв = "ПокинутьБазу") Тогда
  Если (ИмяП <> ИмяПользователя()) Тогда
   Если (ВремяОтключения=-1) Тогда
    ПокинутьБазу = 1;
    ВремяОтключения = Число(Парам2);
    Принудительно = Число(Парам1);
    Предупреждение("Пользователь "+ПИмяП+" просит закрыть 1С Предприятие для обновления конфигурации."+?(Принудительно=1, РазделительСтрок+"Принудительное отключение через "+ВремяОТключения+" секунд",""),8);
   КонецЕсли;
  Иначе
   Если вопрос("Обнаружен ваш запрос на отключение остальных пользователей от базы."+РазделительСтрок+"Вы хотите снять блокировку?", 4, 10)=6 тогда
    ФС.УдалитьФайл(".\Отчеты\Sysmsg.dat");
   Иначе
    ОбработкаОжидания("Ожидание", 0);
   КонецЕсли;
  КонецЕсли;
 КонецЕсли;

КонецПроцедуры // Ожидание

Прога каждые 3 секунды смотрит файл и если находит - то говорит, что пора мол, сваливать... в зависимости от параметров может принудительно выкинуть пользователей через N секунд
Цитата
Хотя можно как-то стартонуть 1с`ку под опред. юзером, так чё-бы когда этот юзер подключался к своей учётки она у него была открыта и он смогбы в ней работать, а не висела только в процессах???

В автозагрузку этого пользователя добавить запуск 1С с параметрами базы, именем пользователя и паролем - она запустится как обычно, только без запроса имени пользователя и окна выбора базы
Цитата
p.s. Кстати я тебе 300р. торчу...

Да забей, это не та задача, за которую нужно платить деньги.

Это сообщение отредактировал amdx - 9.11.2012 - 09:24
 
[^]
toper
11.11.2012 - 03:46
1
Статус: Offline


Мы прибыле к вам с миром, таг... пасрать

Регистрация: 17.11.05
Сообщений: 5051
amdx
дык я больше админ чем 1с ник)) мне проще батник нарисовать для сброса терминальных сессий чем консольные приблуды этого чюда изучать
 
[^]
Понравился пост? Еще больше интересного в Телеграм-канале ЯПлакалъ!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 1569
0 Пользователей:
[ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]


 
 



Активные темы






Наверх