Имя: Пароль:
1C
 
Запуск 8.2 из командной строки
0 Troxim
 
20.05.10
15:13
У меня был написан батник где последовательно вызывалось несколько 1С:Предприятий 8.1 с разными параметрами. Всё работало нормально. А когда перешли на 8.2 то батник перестал работать в последовательном режиме, а начал работать в параллельном режиме. Для меня очень важно что бы второй сеанс не начинался пока не закончился 1. Как это теперь исправить? Подскажите пожалуйста.
1 Salvador Limones
 
20.05.10
15:16
Покажь батник.
Вообще, для последовательно обычно делают start /w
2 Troxim
 
20.05.10
15:19
"C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise /S app8\rayon_prog /N obmen /P obmen /Debug /C *@WPORT /DisableStartupMessages

rem 2. Load of information from port in a rayon

"C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise /S app8\parom_prog /N obmen /P obmen /Debug /C *@WPAROM /DisableStartupMessages
3 Troxim
 
20.05.10
15:19
через start \w у меня чего-то не получается, где там указывать саму программу?
4 Troxim
 
20.05.10
15:34
Ну и... показал я батник...
5 Живой Ископаемый
 
20.05.10
15:40
start /w "C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise /S app8\rayon_prog /N obmen /P obmen /Debug /C *@WPORT /DisableStartupMessages

rem 2. Load of information from port in a rayon

start /w "C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise /S app8\parom_prog /N obmen /P obmen /Debug /C *@WPAROM /DisableStartupMessages
6 Живой Ископаемый
 
20.05.10
15:43
вернее

start /wait "C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise /S app8\rayon_prog /N obmen /P obmen /Debug /C *@WPORT /DisableStartupMessages

rem 2. Load of information from port in a rayon

start /wait "C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise /S app8\parom_prog /N obmen /P obmen /Debug /C *@WPAROM /DisableStartupMessages


потому что:
help start вот что выдает:

Запуск указанной программы или команды в отдельном окне.

START ["заголовок"] [/Dпуть] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
     [/LOW | /NORMAL | /HIGH | /REALTIME| /ABOVENORMAL | /BELOWNORMAL]
     [/WAIT] [/B]
     [команда/программа] [параметры]

   "заголовок" Заголовок окна.
   путь        Рабочий каталог.
   B           Запуск приложения без создания нового окна с отключением
               обработки сочетания клавиш ^C. Если приложение не
               обрабатывает сочетание клавиш ^C самостоятельно,
               единственным способом его прерывания является
               использование сочетания клавиш ^Break.
   I           Новой средой станет исходная среда, переданная
               cmd.exe, а не текущая среда.
   MIN         Запуск команды/программы в свернутом окне.
   MAX         Запуск команды/программы в развернутом окне.
   SEPARATE    Запуск 16-разрядной программы Windows в отдельной
               области памяти.
   SHARED      Запуск 16-разрядной программы Windows в общей
               области памяти.
   LOW         Запуск приложения с приоритетом IDLE.
   NORMAL      Запуск приложения с приоритетом NORMAL.
   HIGH        Запуск приложения с приоритетом HIGH.
   REALTIME    Запуск приложения с приоритетом REALTIME.
   WAIT        Запуск приложения с ожиданием его завершения.
   ABOVENORMAL Запуск приложения с классом приоритета ABOVENORMAL
   BELOWNORMAL Запуск приложения с классом приоритета BELOWNORMAL
   команда/программа
               Если это внутренняя команда cmd.exe или пакетный файл,
               обработчик команд (cmd.exe) запускается с ключом /K.
               Это означает, что окно не будет закрыто после завершения
               команды.

               Если это не внутренняя команда cmd.exe и не пакетный файл,
               значит, это программа, которая будет запущена в графическом
               или текстовом окне.

   параметры   Параметры, передаваемые команде/программе.


Изменения вызова внешних команд из командной строки или с помощью команды
START при включении расширенной обработки команд:

Для вызова неисполняемых файлов через механизм сопоставления типов файлов
   достаточно просто ввести имя файла в командной строке.  Например, команда
   WORD.DOC запускает приложение, сопоставленное расширению имени файла .DOC.
   Сведения о создании подобных сопоставлений из пакетных файлов приведены
   в описаниях команд ASSOC и FTYPE.

При запуске 32-разрядного приложения с графическим интерфейсом пользователя
   обработчик команд CMD.EXE не ожидает завершения работы приложения перед
   возвратом к приглашению командной строки.  Подобное новое поведение НЕ
   относится к запуску приложений из пакетных файлов.

При выполнении командной строки, первым элементом которой является текстовая
   строка "CMD" без расширения имени файла или указания пути, она заменяется
   значением переменной COMSPEC. Это предотвращает запуск CMD.EXE из
   текущей активной папки, если таковая программа там имеется.

Если первый элемент командной строки не содержит расширения имени файла,
   обработчик команд CMD.EXE использует значение переменной среды PATHEXT,
   чтобы определить расширения имен исполняемых файлов и порядок поиска
   нужного файла.  По умолчанию для переменной PATHEXT задается
   значение:

       .COM;.EXE;.BAT;.CMD

   Обратите внимание, что этот синтаксис подобен синтаксису для переменной
   PATH, то есть отдельные элементы разделяются точкой с запятой.

Если при поиске исполняемого файла нет соответствия ни одному из расширений,
выполняется проверка соответствия указанного имени папки. Если имя папки
соответствует указанному, то команда START запускает EXPLORER для этого
пути. Если такое действие выполняется из командной строки, то оно
эквивалентно выполнению команды CD /D для указанного пути.
7 Troxim
 
20.05.10
15:46
Самое интересное если запустить такой вот батник
"C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise
то оно ждет пока завершится сеанс, а если указать какую-то базу, то уже не ждет
8 Troxim
 
20.05.10
15:48
представленый пример не работает пишет ошибку. Не удается найти Enterprice
9 Troxim
 
20.05.10
15:50
точнее ещё пишется не удаётся найти фаил Enterprice
10 Живой Ископаемый
 
20.05.10
15:52
это потому что правильно писать Enterprise
неожиданно, да?
11 Troxim
 
20.05.10
15:55
я так и написал... я просто на форуме ошибочку допустил.... Пишет не найден фаил Enterprise
12 Живой Ископаемый
 
20.05.10
16:01
можно сделать по другому.. можно написать так:

start /wait first.bat
start /wait second.bat

в файле first.bat такое:
"C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe" Enterprise /S app8\rayon_prog /N obmen /P obmen /Debug /C *@WPORT /DisableStartupMessages

просто видимо

start /wait на вход можно подавать только одну строку.. либо эту строку заключить в кавычки - в общем дядюка, тебе стоит поэкспериментировать...
13 Troxim
 
20.05.10
16:03
спасибо огромное
14 Troxim
 
20.05.10
17:01
Нифига что-то \wait работать не хочет
15 Troxim
 
20.05.10
17:02
всё работает ... извините
16 Живой Ископаемый
 
20.05.10
17:20
рассказывай, где лажал?
17 Salvador Limones
 
20.05.10
17:51
(16) Что в (14), что в (3) автор упорно указывает обратный слэш.
18 Живой Ископаемый
 
20.05.10
17:56
2(17) хочу услышать это от него... А то у сторонних наблюдателей может сложится впечатление, что проблема магическим образом рассосалась сама.
19 Ковычки
 
20.05.10
17:59
start "" /wait ...
20 Живой Ископаемый
 
20.05.10
18:01
2(19) а как написать если в кавчках идет строка, в которой также есть строка с кавычками? просто писать, будет работать?
21 EvgeniuXP
 
20.05.10
19:38
а версию 1С 8.1-8.2 можно узнать через командную строку?
22 Ковычки
 
20.05.10
21:14
(20)
задваивай, первые пустые ковычки обязательны, хоть с вайтом хоть без
start "" /wait """C:\Program Files (x86)\1cv82\8.2.10.82\bin\1cv8s.exe"" Enterprise /S app8\parom_prog /N obmen /P obmen /Debug /C *@WPAROM /DisableStartupMessages"

а еще правильнее
start "Запускаем адинес..." /d "C:\Program Files (x86)\1cv82\8.2.10.82\bin" /wait "1cv8s.exe Enterprise /S app8\parom_prog /N obmen /P obmen /Debug /C *@WPAROM /DisableStartupMessages"
23 Живой Ископаемый
 
21.05.10
00:57
2(22) спасибо... не забыть бы