#0
by extrim-style
Подскажите, как экранировать кавычки для КомандаСистемы? Так работает: КомандаСистемы("""C:Program Files (x86)1cv828.2.19.106in1cv8.exe"" ENTERPRISE /F G:ПутьКБазе /RunModeManagedApplication /Execute G:ПутьКБазеОбработка.epf"); Добавляю параметр /C - не работает: КомандаСистемы("""C:Program Files (x86)1cv828.2.19.106in1cv8.exe"" ENTERPRISE /F G:ПутьКБазе /RunModeManagedApplication /Execute G:ПутьКБазеОбработка.epf /C""Параметр""");
#2
by extrim-style
+ ЗапуститьПриложение не подходит, т.к. не ожидает завершения, поэтому вопрос в всё также актуален.
#7
by extrim-style
в случае КомандаСистемы в CMD попадает уже интерпретированная версия (две кавычки в одну). А как он её интерпретирует, у меня не получается посмотреть. А в исходной строке я ошибок не нахожу.
#8
by extrim-style
такая строка в CMD отрабатывает нормально: "C:Program Files (x86)1cv828.2.19.106in1cv8.exe" ENTERPRISE /F G:ПутьКБазе /RunModeManagedApplication /Execute G:ПутьКБазеОбработка.epf /C"Параметр" Мне её нужно правильно в КомандуСистемы вставить.
#12
by Ёпрст
КомандаСистемы(""""C:Program Files (x86)1cv828.2.19.106in1cv8.exe""" ENTERPRISE /F G:ПутьКБазе /RunModeManagedApplication /Execute G:ПутьКБазеОбработка.epf /C"""Параметр"""")
#13
by mingw
Точно же. Вспомнил эту фишку в 8ке с тройными кавычками. Давно не пользовался КомандаСистемы. Лет 5 уже.
#15
by Chainsaw
какие тройные, пациент? Берем правильно расставленные кавычки из строки для cmd. По правилам синтаксиса 1С удваиваем их, чтобы поместить в строку. Добавляем слева и справа ограничивающие строку. Вставляем в вызов функции.
#21
by extrim-style
делаю СтрокаЗапуска="""C:Program Files (x86)1cv828.2.19.106in1cv8.exe"" ENTERPRISE /F G:ПутьКБазе /RunModeManagedApplication /Execute G:ПутьКБазеОбработка.epf /C""Параметр"""; Копирую строку из окна сообщений, вставляю в CMD - отрабатывает нормально.
#25
by mingw
Паришь с кавычками. Не в тех местах. И что такое "Параметр"? "G:ПутьКБазеОбработка.epf" - каждый отдельный путь. В котором длинные и(или) русские имена. Лучше в кавычки.
#28
by solarcold
Был бы я Богом Программирования - создал бы такие штуки, как "технические кавычки" и "технические слеши", и прочие, чтобы они использовались исключительно в коде и никогда в тексте, и не было геморроя с их использованием.
#37
by extrim-style
может кто-нибудь подскажет, как мне окно cmd оставить на экране, чтобы посмотреть на результат транслирования?
#43
by extrim-style
КомандаСистемы("""C:Program Files (x86)1cv828.2.19.106in1cv8.exe"" ENTERPRISE /F G:ПутьКБазе /RunModeManagedApplication /Execute G:ПутьКБазеОбработка.epf /C""Параметр""" pause); cmd-окно появляется и исчезает
#44
by extrim-style
КомандаСистемы("""C:Program Files (x86)1cv828.2.19.106in1cv8.exe"" ENTERPRISE /F G:ПутьКБазе /RunModeManagedApplication /Execute G:ПутьКБазеОбработка.epf /C""Параметр""" >>D:1.txt); получаю пустой документ
#46
by Chainsaw
Короче. Сподвигли меня на эксперимент, блин. При запуске через КомандаСистемы, 1С зовет командный интерпретатор и тупо отдает ему строку параметром /c То есть из строки КомандаСистемы("""C:Program Files (x86)1cv88.3.7.1759in1cv8.exe"" ENTERPRISE /RunModeManagedApplication /F D:ERP20"); Получается вменяемое и запускаемое cmd.exe /c "C:Program Files (x86)1cv88.3.7.1759in1cv8.exe" ENTERPRISE /RunModeManagedApplication /F D:ERP20 Если взять значение параметра D:ERP20 в кавычки, то башню сносит именно cmd.exe на определение параметров, что к чему относится. Он решает не рисковать и падает с ошибкой типа "C:Program" не является внутренней или внешней командой, исполняемой программой или пакетным файлом." Правильный путь решения - добавить еще две ограничивающие кавычки для cmd: Или аналогично для 1С Пробелы специально поставил, чтобы про тройные кавычки не трындели. Консалтеров развелось.
#50
by Chainsaw
так даже надежней :) оно у тебя 5 лет назад тупо без параметров запускалось. Ты брал в кавычки путь к исполняемому файлу, а остальное милостью гейтса и нуралиева проскакивало
#52
by sitex
ага ;) тогда уж лучше создавать текст в 1С,которая потом создасть файл bat и потом его выполнит :-)
#53
by Chainsaw
как сильно частное решение В нищих конторах, которые дают заказы на написание своего софта, можно запросто нарваться на линуксовый тазик с /tmp смонтированным с noexec. Потому что админы.
#55
by Chainsaw
чтобы просто запустить команду на выполнение которой у меня гарантировано есть права? Вы всегда так делаете? А зачем?
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- v7: v7 : НДС при возврате
- v7: Что нужно чтоб подключить ККМ Меркурий 112F к 1с V7 Торговля + склад
- v7: v7.7 премещение элемента справочника
- v7: v8: v7: Кто-нибудь сумел скачать комплект отчетности за I квартал 2007 года
- v7: 1С V7.7 в сети
- v7: 1C:V7 starter program (for SQL) - обнаружена ошибка
- v7: Перенос данных Бухгалтерия из v7 в v8
- v7: v7 Перехват глобального события ПриЗаписи() или ОбработкаПроведения()
В этой группе 1С
- Как в динамическом списке вывести различные значения через запятую?
- бух 3.0 счет фактура не формирует проводок по 19 счету
- Добавить дополнительный реквизит в планы обмены
- v7: Смена типа реквизита справочника на ТиС SQL
- возврат товара от покупателя Дт 90.03 Кт 19.03
- Обработка запросов ЕГАИС
- Управляемое приложение. Сохранение реквизитов объектов формы.
- 1С 8.3 Настройка отчета - сортировка по возрастанию артикула.
- Ошибка Недопустимый тип сравнения
- полное удаление номенклатуры
- v7: Декларация по НДС Раздел 8 ( сведения из книги покупок)
- БП 2.0 технологический анализ бухгалтерского учета, анализ проводок
- 1С БП 3.0 Отключить проверку корректности р/с
- Бухгалтерия 3 ввод остатков по 41
- Фронтол не видит весы
- ЗуП 2.5 Как настроить вида расчета, чтобы запрашивался показатель ?
- Почему в СКД во вкладке Порядок нет АВТОУПОРЯДОЧИВАНИЯ
- team viewer_вы ввели неверный пароль, повторите попытку
- не работают новые версии 1с BarCode
- УТ11 финансовый результат по сделкам в настройках не активен