Имя: Пароль:
1C
1C 7.7
v7: Перезапуск 1С Предприятие 7.7
0 kupec
 
21.06.17
15:25
Ребят...можно ли как то перезапустить 1с предприятие программно? Есть какие-нибудь решения?
1 Масянька
 
21.06.17
15:26
(0) Программно - чем?
2 kupec
 
21.06.17
15:27
Ну написать код, чтобы при выходе из программы запустить опять ту же  самую БД
3 Масянька
 
21.06.17
15:29
(2) Бесконечный цикл... Месье понимает толк в извращениях (С)
Даже боюсь спросить - зачем?
4 kupec
 
21.06.17
15:33
(3) какой цикл, естественно что при определенных условиях это должно работать. Вот и не спрашивай.
5 Масянька
 
21.06.17
15:35
(4) При определенных условиях  - не закрывай.
6 kupec
 
21.06.17
15:36
может при завершении работы запускать батник, в котором например будет пауза секунд 10 а потом запуск программы с параметрами???
7 kupec
 
21.06.17
15:36
(5) Я учту твое пожелание
8 Масянька
 
21.06.17
15:38
(7) Ой, не надо. Я пошутила. Лучше батник пиши.
9 kupec
 
21.06.17
15:38
(8) как в батнике паузу сделать на N секунд? Не в курсе
10 Масянька
 
21.06.17
15:39
(9) Вот и не спрашивай.(С)
11 kupec
 
21.06.17
15:42
(10) спасибо
12 vcv
 
21.06.17
15:44
(9) > как в батнике паузу сделать на N секунд? Не в курсе
ping localhost >nul
вполне заменяет паузу. Можно еще в цикл завернуть.
13 Дык ё
 
21.06.17
15:45
(9) waitfor, choice
14 1c-kind
 
21.06.17
15:48
net stop "1C:Enterprise 8.2 Server Agent (x86-64)"

TIMEOUT /T 5 /NOBREAK

net start "1C:Enterprise 8.2 Server Agent (x86-64)"
15 Масянька
 
21.06.17
15:51
(11) ПриЗавершенииРаботыСистемы:
    КомандаСистемы("start D:\1c_adm\BIN\1cv7s.exe enterprise /D" + """D:\1Cv7\GameBase""" + " /... /....");
В первых кавычках - путь к платформе (полный).
Во вторых - путь к базе (тоже полный).
В третьих - ... - имя зверя, .... - пароль.
16 Масянька
 
21.06.17
15:51
+ (15) start - команда DOS.
17 kupec
 
21.06.17
15:52
(15) (16) Напишет ошибку что каталог пользователя занят, нужно подождать пока программа не закроется, про параметры запуска 1с екзе я знаю, спасибо
18 kupec
 
21.06.17
15:53
(13) пишу так
waitfor /T 5
ругается
ОШИБКА: Этот сигнал может содержать только знаки, входящие в диапазоны a-z, A-Z, 0-9, и знаки ASCII из диапазона 128-255.
19 Масянька
 
21.06.17
15:53
(17) Точно призакрытии? Последняя? Сетевая?
20 kupec
 
21.06.17
16:01
(19) да при завершении, программа не успевает закрыться, релиз 27, не сетевая, пользователь 1
21 Масянька
 
21.06.17
16:03
(20) Команда последняя в Призавершении?
22 kupec
 
21.06.17
16:05
(21) да
23 kupec
 
21.06.17
16:12
Текст=СоздатьОбъект("Текст");
Текст.ДобавитьСтроку("waitfor r /T 5");
Текст.ДобавитьСтроку(""""+КаталогПрограммы()+"1cv7s.exe"" enterprise /m /d"+СокрЛП(КаталогИБ()));
Текст.Записать(КаталогИБ()+"start.cmd");
ЗапуститьПриложение(КаталогИБ()+"start.cmd");
ЗавершитьРаботуСистемы(0);

Вот, только единственное что, висит окно CMD пока открыта 1С
24 kupec
 
21.06.17
16:31
можно запуск программы делать через start, но там не работают пути с пробелами
25 пипец
 
21.06.17
16:42
хехе , при завершении запускать служебную базу 1С которая проверит закрылась ли ТА 1С через обработкаожидания и оттуда запускать опять нужную
26 пипец
 
21.06.17
16:43
даже если сделать закрыть !!! программа может не закрыться
ЗЫ как вариант- так что проверять по любому
ЗЫЫ или пиши скрипт - программу сам на чем хочешь
27 Mr_Rm
 
21.06.17
17:18
(24) Работают:
start "" "c:\Program Files\1Cv77\BIN\1cv7.exe"
Проверять, закрылось ли:
tasklist /nh /fi "imagename eq 1cv7.exe"
28 kupec
 
22.06.17
08:42
(27) не работает, проверял несколько раз, если у тебя работает то можно строку запуска целиком
29 Масянька
 
22.06.17
08:44
(28) Моё в (15) тоже спокойно работает. Может это у тебя с лыжами чего-то не то?
30 kupec
 
22.06.17
08:49
(29) а где пробелы в (15) ?????
31 1dvd
 
22.06.17
08:51
с VBS дружим?
32 Маркусс
 
22.06.17
08:53
если не хочется калечить конфу, в планировщик можно засунуть батник, который будет проверять наличие процесса. убивать его и запускать заново.
33 kupec
 
22.06.17
08:56
Не работает start с пробелами
34 1dvd
 
22.06.17
08:57
(33) покажи как делаешь
35 kupec
 
22.06.17
09:05
36 1dvd
 
22.06.17
09:06
(35) в кавычки обрами
37 kupec
 
22.06.17
09:07
38 kupec
 
22.06.17
09:07
с кавычками
39 Масянька
 
22.06.17
09:08
(35) (37) Покажи код, где прописано сиё.
40 1dvd
 
22.06.17
09:09
(38) Ты так стесняешься свой код показывать, как первокурсница на свидании
41 kupec
 
22.06.17
09:09
Все ....разобрался, дело было в кавычках, я их просто не там ставил, виноват ))))
42 Масянька
 
22.06.17
09:11
(40) О, как... :))))))))))))
43 Масянька
 
22.06.17
09:11
(41) А я тебе говорила про лыжи...
44 kupec
 
22.06.17
09:14
Текст=СоздатьОбъект("Текст");
        Текст.ДобавитьСтроку("waitfor r /T 5");                                                        
        Путь=ЗаменитьПуть(КаталогПрограммы());
        Текст.ДобавитьСтроку("start "+Симв(34)+Симв(34)+" "+Симв(34)+Путь+"1cv7s.exe"+Симв(34)+" enterprise /m /d"+КаталогИБ());
        Текст.Записать(КаталогИБ()+"start.cmd");
        ЗапуститьПриложение(КаталогИБ()+"start.cmd");
45 kupec
 
22.06.17
09:15
ЗаменитьПуть возвращает переданное ей значение
46 1dvd
 
22.06.17
09:15
(44) пипец, конечно. Но, работает - не трожь
47 kupec
 
22.06.17
09:16
(46) а что не так??
48 Масянька
 
22.06.17
09:16
(46) Не, месье понимает толк в извращениях :)))
А так - да - "работает - не трожь".
49 kupec
 
22.06.17
09:16
у меня туго с кавычками (((((
50 kupec
 
22.06.17
09:18
в итоге получается вот такой батник

waitfor r /T 5
start "" "C:\Program Files\1Cv77\BIN\1cv7s.exe" enterprise /m /dD:\kassa.db_FR\