Имя: Пароль:
1C
 
как в BAT файле сделать запуск окна и его автоматическое закрытие?
0 vde69
 
05.11.16
12:04
суть проблемы:

если мы добавляем список информационных баз не в стартовом окне а программном, то сами базы появляются только при втором открытии стартового окна.

Хочется из bat файла запустить 1с, дождаться корректного открытия стартового окна (там будет вопрос "Список баз пуст") и корректно закрыть его что бы запустить повторно...
1 yzimin
 
05.11.16
12:14
Работать только с ...\1cv82\common\1cestart.exe не предлагать?
2 oslokot
 
05.11.16
12:22
call 1s.exe
3 Garykom
 
гуру
05.11.16
12:29
4 vde69
 
05.11.16
12:53
(1) Вы видимо не в курсе, что файл *s.exe сам умеет находить и запускать нужного клиента в рамках своей версии.

а наличие в системе нескольких версий (а значит и нескольких версий серверов 1с) это уже перебор...

я придерживаюсь правила - переход на новую версию сразу для всех баз...

реализовал размещение BIN на сетевом ресурсе и теперь замена версии для меня плевое дело...

(2) это запуск а мне нужно закрытие процесса (посылка окну ALT+F4)

(3) читал, в чем-то согласен, в чем-то нет... В целом я уже сделал свой велосипед, может выложу куда... у меня свои подходы к сабжу еще с 7.7,

изначально брал проект http://catalog.mista.ru/public/193384/ на нем дописал автоматическое формирование списков пользователей

сейчас осталось 2 мента довести
1. "Первый запуск" - это именно сабж, сейчас при первом запуске для нового юзера приходится 2 раза ярлык запускать.
2. "фоновое обновление списков баз", тут проблема с правами, по тому как перезапись открытых файлов требует админских прав...
5 vde69
 
05.11.16
12:54
собственно для 7.7 у меня было http://catalog.mista.ru/public/16686/
6 Aleksey
 
05.11.16
12:57
(4) Уже починили? Одно время это не работало и 1С всегда запускала тонкого клиента в независимости от ключа. Плюс недостаток стартера в том что он запускает другой файл, а это значит для бат файла что программа завершила работу
7 Aleksey
 
05.11.16
12:57
И кстати зачем такие сложности?
8 vde69
 
05.11.16
13:01
(7) 50 баз и 500 пользователей вручную не набегаешься...
9 Aleksey
 
05.11.16
13:15
(8) А почему нельзя использовать список информационных баз?
10 Aleksey
 
05.11.16
13:21
http://v8.1c.ru/overview/Term_000000494.htm
https://habrahabr.ru/post/179405/

У нас попроще тупо прописан ярлык с запуском конкретной базы и уже ярлык через АД раздается пользователям. И пофиг на список.
11 Aleksey
 
05.11.16
13:28
ну а если решать задачу тупо в лоб то после запуска 1C делаем задержку и tasskkill
12 vde69
 
05.11.16
18:33
(9) я и использую персональный список информационных баз, но для первого запуска я сначала копирую конфигурацию в которой прописан путь к этому списку.

но вот при первом запуске этот список не цепляется... этот список цепляется только при последующих запусках, вот я и думаю как-бы первый запуск сделать красиво...

(10) я с АД не хочу связываться по причинам административного характера

(11) мне нужен не килл а клозе...
13 Torquader
 
05.11.16
18:37
Список баз живёт в файле.
Зачем чего-то городить, если перед запуском 1С можно просто перезаписать файл, а только после этого запустить стартер ?
14 vde69
 
05.11.16
18:41
(13) я так и делаю, проблема в том, что переформирование списка идет не при открытии стартера а при закрытии, и первый запуск идет с пустым списком...

по моему уже пятый раз про это пишу!!!
15 vde69
 
05.11.16
18:45
и еще один вопрос не соображу:

куда положить файл настройки хаспа если запуск 1c идет из \serv\1c\bin\

в этой папке 1с его не видит, видимо дело в том, что юмл пути обрабатываются немного по другому...
16 spock
 
05.11.16
18:51
(14) в (10) предложено почитать решение от вендора - все юзерам прописать каталог с настройками баз. А потом рулить этим каталог как хочешь.
Распихать в этом каталоге настройки баз по разным файлам и win-правами рулить кому что прописывать в стартере.
Стартер работает просто:
- видит в каталоге файл с настройками базы - прописал ее юзеру.
- не видит - не прописал (а если до этого прописывал, то удалит).

Просто и удобно.
17 Torquader
 
05.11.16
19:13
(14) Причём здесь переформирование - если я ему положил файл из которого он читает список баз, то он явно его читать будет при открытии - просто, нужно знать, в какой файл и что положить.
18 Torquader
 
05.11.16
19:19
Вот файл ibases.b8i - в нём прописаны базы.
Если я что-то в нём меняю, то сразу при открытии списка баз я эти изменения вижу.
Какой ещё можно файл поправить, чтобы база появлялась при закрытии ?
19 vde69
 
05.11.16
19:36
я правлю файл 1CEStart.cfg

в него записываю

CommonInfoBases=\\serv\1c\Login@NameDomane.v8i

и потом правлю эти персональные файлы лежащие на сервере.

но при первом запуске не происходит обьединение локального и удаленного файла, это объединение происходит при выходе...
20 spock
 
05.11.16
19:45
(19) Дать скрипт, который реализует, описанное в (16)?
21 Лефмихалыч
 
05.11.16
19:47
(0) может вместо этого сначала добавить базу непосредственно в ibases.b8i, а уже потом запускать 1cestart.exe?
22 vde69
 
05.11.16
20:48
(21) а если она там уже есть? а гуиды разные? банально перезаписать - нельзя могут быть персональные локальные базы...

у меня есть фишка - я знаю каталоги на клиентах с кешем для каждой базе, то есть у меня у базы единый гуид для всех юзеров.... штатно это не делается...
23 Jump
 
05.11.16
21:21
(19) Т.е задача только в том чтобы открыть окно и закрыть его?
Костыли рассматриваешь?
24 vde69
 
05.11.16
21:22
(23) да
25 Jump
 
05.11.16
21:24
(24) Если так - пустая база с пустой конфигурацией.
Открываем ее из командной строки с вызовом обработки которая ее закроет.
База моментально открвается и тут же закрывается.
26 Aleksey
 
05.11.16
22:05
(22) Не пиши ГУИДЫ, 1С-ка нормально к пропускам относиться
27 Torquader
 
05.11.16
22:06
28 vde69
 
05.11.16
22:17
(26) гуид - это путь к локальному кешу, я их пишу СПЕЦИАЛЬНО что бы при необходимости чистить его было проще, одинаковый каталог на всех компах....

в этом моя фишка :)
29 Лефмихалыч
 
06.11.16
16:26
(22) ну, поискать надо, какие проблемы? Или для этого ватник плохо подходит? Ну, дак, это проблемы того, кто скриптов боится
30 Лефмихалыч
 
06.11.16
16:28
да и в вообще, общий список баз решит все эти глупые проблемы на раз.
Тогда задача сводится к тому, чтобы тупо перезаменять файл v8L на компе клиента на правильный
31 Cyberhawk
 
06.11.16
20:29
Общий список баз, опубликованный как веб-сервис, почему не делаешь?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший