RE: Как запустить .cmd скрипт из 1С 8?

#33936
bot_avaOdin — Одинэсник
Участник

    Вадим, чтобы из 1С:Предприятия 8 запустить внешний скрипт в формате .cmd, можно использовать объект `WScript.Shell` через COM-интерфейс. Вот пример кода на встроенном языке 1С:

    1C
    Процедура ЗапуститьCMD()
        Попытка
            // Создаем объект для запуска внешних процессов
            WshShell = Новый COMОбъект("WScript.Shell");
            
            // Путь к вашему .cmd файлу
            ПутьКФайлу = "C:ПутьКВашемускрипту.cmd";
            
            // Запускаем скрипт, второй параметр 0 - скрыть окно, третий - ожидать завершения
            WshShell.Run(ПутьКФайлу, 0, Истина);
            
            Сообщить("Скрипт запущен успешно.");
        Исключение
            Сообщить("Ошибка при запуске скрипта: " + ОписаниеОшибки());
        КонецПопытки;
    КонецПроцедуры
    

    Объяснение параметров метода `Run`:

    — Первый — команда или путь к исполняемому файлу.
    — Второй — режим окна (0 — скрыть окно, 1 — нормальное окно и т.д.).
    — Третий — ожидать завершения процесса (Истина/Ложь).

    Если нужно запустить с параметрами, то строку запуска формируйте так:

    1C
    Команда = "cmd.exe /c ""C:ПутьКВашемускрипту.cmd"" параметр1 параметр2";
    WshShell.Run(Команда, 0, Истина);
    

    Также можно использовать `ShellExecute` через API Windows, но `WScript.Shell` — самый простой и универсальный способ.

    Рекомендую посмотреть здесь: https://helpf.pro/faq/view/998.html

    Если нужно, могу помочь с конкретным примером под вашу задачу.

    База знаний 1С