|   |   | 
| 
 | Как дождаться завершения работы 1С в пакетном режиме? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Гений 1С гуру 17.09.20✎ 14:09 | 
        Запускаю в пакетном режиме 1С для восстановления базы из DT.
 Показывается ее окошко, но управление возвращается назад мне. Как дождаться завершения? Может быть, какой-то ключ надо передавать? КомандаСистемы не работает, сразу вылетает, сложно понять почему. Файл1CD = Новый Файл(ПолноеИмяФайла1CD); СтароеФайл1CDСуществует = Файл1CD.Существует(); Если СтароеФайл1CDСуществует Тогда СтароеВремяИзменения1CD = Файл1CD.ПолучитьВремяИзменения(); КонецЕсли; КомандаРазворачиванияИзАрхива = """C:\Program Files (x86)\1cv8\common\1cestart.exe""" + " CONFIG" + " /F""" + ПутьБазы + """" + " /OUT""" + ПолноеИмяФайлаЛога + """" + " /Visible " + " /RestoreIB""" + ПолноеИмяФайлаDT + """ "; Если СтароеФайл1CDСуществует Тогда КомандаРазворачиванияИзАрхива = КомандаРазворачиванияИзАрхива + " /N""" + ЛогинБазы + """" + " /P""" + ПарольБазы + """"; КонецЕсли; КодВозврата = Неопределено; ЗапуститьПриложение(КомандаРазворачиванияИзАрхива,,истина, КодВозврата); //КомандаСистемы(КомандаРазворачиванияИзАрхива); //Чтобы дождалась НовоеФайл1CDСуществует = Файл1CD.Существует(); Если НовоеФайл1CDСуществует Тогда НовоеВремяИзменения1CD = Файл1CD.ПолучитьВремяИзменения(); КонецЕсли; Если (НЕ СтароеФайл1CDСуществует ИЛИ СтароеВремяИзменения1CD <> НовоеВремяИзменения1CD) И НовоеФайл1CDСуществует Тогда ОтчетыСервер.ОбновитьДатуАктуальностиБазы(ТекБаза, ТекущаяДата()); КонецЕсли; | |||
| 1
    
        Вафель 17.09.20✎ 14:42 | 
        а чем запустить приложение не устроило?     | |||
| 2
    
        acht 17.09.20✎ 14:49 | 
        (0) Ты запускаешь не тот екзешник, фрилансер.     | |||
| 3
    
        Kigo_Kigo 17.09.20✎ 14:59 | 
        (2) Ну в ярлыке то тот написан Бггг ))))     | |||
| 4
    
        Гений 1С гуру 17.09.20✎ 14:59 | 
        (2) вот это уже мысль     | |||
| 5
    
        PLUT гуру 17.09.20✎ 15:01 | 
        (4) стартер запускаешь, а нужно в пакетном запуске мучать 1cv8.exe     | |||
| 6
    
        Serg_1960 17.09.20✎ 15:17 | 
        start \w ...     | |||
| 7
    
        Сергиус 17.09.20✎ 15:48 | 
        Скоро на экранах страны: "Мой гений дарит вам уникальную обработку восстановления баз 1с")     | |||
| 8
    
        Гений 1С гуру 17.09.20✎ 17:53 | 
        (5) да, да, спасибо, уже подсказали.
 КаталогПрограммы = КаталогПрограммы(); ПолноеИмяПрограммы1С = КаталогПрограммы + "\1cv8.exe"; КомандаРазворачиванияИзАрхива = """" + ПолноеИмяПрограммы1С + """" + " CONFIG" + " /F""" + ПутьБазы + """" + " /OUT""" + ПолноеИмяФайлаЛога + """" + " /Visible " + " /RestoreIB""" + ПолноеИмяФайлаDT + """ "; Если СтароеФайл1CDСуществует Тогда КомандаРазворачиванияИзАрхива = КомандаРазворачиванияИзАрхива + " /N""" + ЛогинБазы + """" + " /P""" + ПарольБазы + """"; КонецЕсли; | |||
| 9
    
        spectre1978 17.09.20✎ 18:39 | 
        (0) когда-то давно делал на vbs-ном скрипте. Короче, файло dt пробуешь открывать через паузу в бесконечном цикле. Как откроется без ошибки - значит все, закончилось.     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |