Консольная программа "Скрытый запуск процессов" от kuzkov.info с исходниками

Публикация № 1391514

Администрирование - Администрирование данных 1С - Сервисные утилиты

скрытый запуск консоль exe kuzkov.info

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

Описание

Довольно часто при разработке 1С конфигураций возникает нужность подключить функционал, который уже написан другими программистами и выполнен в виде консольных программ.

Плюсы консольных программ

1) Независимость от разрядности запускающего приложения.
Запускающее приложение может быть любой разрядности. Например х64 приложение может запускать х32 консольную программу.

2) Безопасность адресного пространства запускающего приложения.
Консольная программа работает в своем адресном пространстве и никак не может повлиять на память запустившего приложения.

3) Существует огромный набор консольных приложений, которыми можно пользоваться "из коробки", чем дублировать функционал на встроенном 1С языке.

Минусы консольных программ

Один из основных минусов это мигание черного экрана при запуске на клиентском компьютере.

Скрытый запуск процессов

В моей работе было перепробовано несколько разных вариантов обхода мигания, но по разным причинам было принято решение перестать их использовать.
Самым действенным способом оказалось решение написать собственную маленькую консольную программу-запускатель, которая через себя должна запускать целевую консольную программу в скрытом режиме и с передачей параметров.

Способ применения следующий:
1) Рядом с целевой программой должен быть файл szp.exe;
2) В командах запуска первыми строками дописывается "szp.exe УнаследованнаяКомандаСПараметрами";

Тестовое учебное окружение

Для демонстрации скрытого запуска консольного приложения подготовим тестовую среду из 1С конфигурации.
В состав конфигурации будут входить следующие объекты:
1) szp.exe;
2) nconvert.exe;
3) Картинка с цифрами;
4) Тестовая обработка;

Программа "szp.exe"
Программа szp.exe это и есть наш запускатель консольных программ. Программа szp.eze выполнена в виде маленького exe файла.

Программа "nconvert.exe"
Программа "nconvert.exe" это программа для работы с графическими файлами через командную строку
Данная программа имеет малый вес, большой функционал и потому довольно часто применяется в среде 1С программистов для наложения водяных знаков, обрезки картинок, пережатия в другие форматы и других целей.
При обычном запуске nconvert.exe обычно и появляется мигающее черное окно.

Картинка с цифрами
Данную картинку будем использовать для работы с параметрами, чтобы показать, что szp.exe передает параметры целевой запускаемой консольной программе.
На картинке находятся несколько цифр. Программой nconvert.exe будет вырезать цифры из картинки.



Тестовая обработка
Тестовой обработкой будем выполнять заранее подготовленные команды для запуска nconvert.exe как через наш запускатель, так и обычным способом.
Все программы и картинка встроены в конфигурацию в виде макетов.


 





Пример "Обычный запуск"

Перед запуском программ на выполнение выполним их выгрузку из макетов 1С в папку "c:\vrem\" нажатием кнопки "Выгрузить тестовые данные".

Рассмотрим пример запуска программы nconvert.exe на клиенте без скрывающих оберток.
Для этого в подготовленной тестовой конфигурации выполним запуск нажатием кнопки "Запустить без СЗП правильные параметры".

Кодом 1С должна быть выполнена следующая команда



В ходе выполнения должно появиться мигающее черное окно.



Результатом выполнения должна быть созданная картинка с цифрой "1" из картинки со списком цифр.
После успешного выполнения, в окне обработки должно быть сообщение с результатом в виде кода возврата.



Этот код возврата прокидывается через szp.exe в 1С как параметр команды ЗапуститьПриложение().

Пример "Скрытый запуск"

Для запуска nconvert.exe через szp.exe нажимаем кнопку "Запустить СЗП правильные параметры".

Кодом 1С должна быть выполнена следующая команда



В ходе выполнения должно отсутствовать мигающее черное окно.
Результатом выполнения должна быть созданная картинка с цифрой "2" из картинки со списком цифр.
После успешного выполнения, в окне обработки должно быть сообщение с результатом в виде кода возврата.
Этот код возврата прокидывается через szp.exe в 1С как параметр команды ЗапуститьПриложение().

Чтобы убедиться, что szp.exe прокидывает и код ошибки, запускаем выполнение с ошибочными параметрами нажатием кнопки "Запустить СЗП ошибочные параметры".



Код ошибки выполнения nconvert.exe должен выводиться в окне сообщения и должен отличаться от 0.

Таким образом можно запускать почти все консольные программы на клиентской машине без мигающего черного окна.

---

История появления программы

В далеком 2017 году обратился ко мне один клиент. Ему нужно было сделать работу с графикой в 1С.
Суть задачи была следующая, у компании есть несколько услуг и несколько программ, которыми они могут выполнять эти услуги.
В рабочем месте оператора должно быть отображение в виде графа (на основе graphviz) какие услуги поставляется клиенту и какими программами.

Я взял graphviz и подключил его к 1С. Вот тут и возникла проблема, что постоянно возникало мигающее черное окошко при каждом построении графа.
Были попытки обойти это через WScript.CreateObject("WScript.Shell"). Если честно я уже забыл причину отказа от этого подхода.

После безуспешного поиска готовых консольных запускателей, было принято решение самостоятельно написать эту программу и назвать ее szp.exe (скрытый запуск процессов).
С тех пор szp.exe регулярно используется во многих моих проектах.

---

 
 Свертка "Лицензия"

 

---

Надеюсь эта программа будет полезна Вам и вашим пользователям !

Скачать файлы

Наименование Файл Версия Размер
Консольная программа "Скрытый запуск процессов" от kuzkov.info

.zip 2,78Mb
12
.zip 2,78Mb 12 Скачать бесплатно
Исходники

.zip 2,78Mb
2
.zip 2,78Mb 2 Скачать бесплатно

Специальные предложения

Оставьте свое сообщение

См. также

Активные пользователи Промо

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

Обработка аналогична стандартному окну просмотра списка активных пользователей, плюс добавлены следующие функции: - Отправка сообщения выбранному пользователю; - Отправка сообщения всем пользователям; - Закрытие выбранного соединения; - Закрытие всех соединений с информационной базой (кроме своего).

31.03.2008    37668    4552    coder1cv8    62    

"Откат" данных без транзакций. Расширение для легкого возврата к "исходному" или выбранному состоянию после любых изменений данных

Сервисные утилиты Чистка базы Инструментарий разработчика Универсальные обработки Сценарное тестирование Прочие инструменты разработчика Расширения v8 1cv8.cf Бесплатно (free)

Для сценарного и модульного тестирования, процесса разработки, создания видеоинструкций, сопровождения, первичной настройки конфигураций... В общем, для любых процессов, в которых используются эталонные или стартовые данные, к которым хотелось бы возвращаться (в случае возникших проблем, например) быстрее и проще, нежели с помощью резервной копии

06.04.2021    1183    29    Алексей Воробьев    12    

OneCIBasesCreator - мини-сервис по созданию файла со списком баз 1С

Сервисные утилиты Системное администрирование Бесплатно (free)

Мини-сервис по созданию файла со списком баз 1С (*v8i) на основании файла с настройками сервера (*lst).

01.06.2020    2380    8    korableg    2    

Фиксация изображений с видеокамер (Devline Линия, Acumen, E-Castle) по заданному событию

Сервисные утилиты Бесплатно (free)

Пример использования консольной утилиты CamsCapture, для фотофиксации событий в 1С с камер видеонаблюдения.

10.08.2015    12680    0    IS-Andrey    1    

v77. Файл пакетного запуска.

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Обработка для формирования файла установок пакетного запуска 1Cv7.

21.03.2012    14023    30    item    9    

Текстовый парсер - обработка формирования биллинга для УПАТС DX-500

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Простенький парсер для текстового файла биллинга АТС DX-500. Для справки: АТС выгружает данные о звонках своих абонентов в формализованный текстовый файл с раширением *.blg. Читать такой файл в исходном виде неудобно, извлекать и отбирать данные по звонкам - тем более. Написана под конкретный формат файла биллинга (зависит от плана нумерации АТС) на платформе 7.7. Использовать в качестве примера. Код чрезвычайно прост, но может быть кому-то поможет сэкономить время :)))))

06.02.2011    6038    28    Дач    1    

Редактор (скрытых) реквизитов объектов

Обработка документов Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Универсальная обработка для доступа к скрытым реквизитам объектов (пока только документы)

21.10.2010    9174    229    RafaelRS    9    

АЦРК: Редактор объекта

Универсальные обработки Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Обработка «АЦРК: Редактор объекта» предназначена для просмотра и редактирования реквизитов любого объекта базы данных. Показывает все реквизиты в универсальной форме. Может применяться для «точечного ремонта» базы данных.

12.09.2010    14323    147    acrk    6    

Загрузка изменений конфигурации с FTP

WEB Сервисные утилиты v77::ОУ v77::БУ v77::Расчет 1cv7.md Бесплатно (free)

В помощь разработчику конфигурации. Предназначена для загрузки изменений конфигурации находящейся в разработке. Работу с обработкой после настройки и сохранения параметров подключения к ФТП ведет обычный пользователь системы, по просьбе разработчика.

26.05.2010    10460    57    Струнин    1    

Поиск и замена дублирующихся элементов справочников, КОД ОТКРЫТ, для 7.7

Сервисные утилиты Поиск данных Универсальные обработки v7.7 1cv7.md Бесплатно (free)

1. Работа над обработкой продолжается. Критика (любая) принимается. 2. Для установки: 2.1 Переименуйте файл WithoutConf.exe_ в WithoutConf.exe и разархивируйте (запустите на выполнение). 2.2 Каталог DLL скопируйте в Вашу базу (копию !!!), каталог ExtForms в одноименный каталог Вашей базы. 3. Для открытия: Сервис Дополнительные возможности 1С:Студио: Отчёты и обработки Поиск и замена элементов справочников 4. В обработке использованы 1С++, FormEx, StrMatch

11.05.2010    24869    621    Незнайка    64    

Групповая обработка документов для 1С: Предприятия 7.7

Обработка документов Сервисные утилиты v77::ОУ 1С7:ТиС Бесплатно (free)

Переделанная типовая обработка из конфигурации "Торговля и склад". Может быть легко адаптирована для любой конфигурации. Обработка умеет снимать / устанавливать пометку удаления, делать не проведенными и проводить документы за выбранный период. Программа распространяется в надежде, что может быть полезена, но БЕЗ КАКОГО-ЛИБО ВИДА ГАРАНТИЙ, ВЫРАЖЕННЫХ ЯВНО ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ПОДРАЗУМЕВАЕМЫМИ ГАРАНТИЯМИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ.

28.04.2010    26887    1336    vovk_v    21    

Пересчет регистров накопления вида "Обороты"

Универсальные обработки Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Что-то с налету не нашел типовой пересчет ОБОРОТОВ, а вдруг понадобилось....

30.03.2010    21330    271    anig99    9    

Универсальные подбор и обработка Задач

Сервисные утилиты Универсальные обработки v8 1cv8.cf Бесплатно (free)

Начал работать с объектом Задачи и столкнулся с необходимостью групповой обработки задач. "Универсальные подбор и обработка объектов" от 1С почему-то этого не умеет делать. Немного работы напильником и обработка стала ещё универсальнее.

04.12.2009    9835    297    hansel    13    

[DesktopGadget1C] - Гаджет для мониторинга активности баз 1С 8.х в клиент/серверном варианте

Сервисные утилиты Статистика базы данных Администрирование данных 1С v8 1cv8.cf Россия Бесплатно (free)

Утилита мониторит серверы 1С 8.1 и 8.2, выводит список активных баз и количество пользователей и позволяет просматривать параметры/настройки кластеров.

27.11.2009    19316    343    Душелов    34    

Универсальный журнал документов + редактирование реквизитов документа без его перепроведения

Обработка документов Сервисные утилиты v8 БП2.0 Бесплатно (free)

Типовая обработка "Универсальный журнал документов" с возможностью редактирования реквизитов документа без его перепроведения.

25.11.2009    14605    466    agew    23    

Редактирование регистров 1С8

Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Обработка предназначена для исправления записей в регистрах, подчиненных регистратору

22.10.2009    8920    471    Pyhar    15    

Загрузка обработок из каталога

Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Загрузка и регистрация обработок, отчетов, печатных форм для стандартных конфигураций 1С 8.1

06.10.2009    9444    33    ilya005    1    

Создаем шифрованные ярлыки.

Универсальные обработки Сервисные утилиты Защита и шифрование v8 1cv8.cf Бесплатно (free)

Покопавшись на сайте я нашел как создают ярлыки. Немного переделав под себя выкладываю данную обработку, не претендуя на Авторство. Просто сделал более удобным.

30.09.2009    13932    89    dj_tol    1    

Убираем Splash Screen для платформы 77.27 (в Терминальном режиме)

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Убираем Splash Screen для платформы 77.27 необходимо для работы в Терминальном режиме

07.09.2009    17463    609    grigr    46    

Информер базы 1с 7.7

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

внешняя программа, сделаная для тестирования DLL-ки позволяет без установленой 1с просматривать список пользователей (в том числе и активных), а так-же дополнительные параметры базы. Планируется добавить некоторые полезные инструменты.

30.08.2009    14976    272    vde69    5    

Фоновое восстановление групповой последовательности документов

Обработка документов Сервисные утилиты v77::ОУ 1cv7.md Бесплатно (free)

Очень маленькая и простая обработка фонового восстановления последовательности документов.

20.08.2009    14234    306    zsrg    20    

Как отрубить пользователей и перезапустить сервер 8.1

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

Как отрубить пользователей и перезапустить сервер 8.1

15.08.2009    10397    530    sam_57    41    

Набор для админа 1С

Сервисные утилиты Россия Бесплатно (free)

Полезняшки-наборчик для админа 1С В связи с кртикой выложил скриншоты.

13.08.2009    15446    994    sam_57    29    

Групповая обработка документов и справочников

Универсальные обработки Сервисные утилиты v8 1cv8.cf Бесплатно (free)

Типовая обработка + 1. Отключение контроля записи (ОбменДанными.Загрузка) 2. Обработка ПВХ

04.08.2009    16351    304    acsent    8    

Автоматическая обновлялка 1С:Предприятие 7.7 через FTP

WEB Сервисные утилиты v7.7 1cv7.md Бесплатно (free)

Очередной скрипт автообновления любых конфигураций 1С:Предприятие 7.7 на VBS.

22.06.2009    13168    159    spacc    8    

Перепроведение документов (фоновое)

Обработка документов Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

Данная разработка является развитием обработки http://infostart.ru/projects/1244. Хочу еще раз выразить огромную благодарность Александру Окулову

02.06.2009    19761    1219    AKV77    27    

Отправка МД-шника на определённый FTP

WEB Сервисные утилиты v7.7 1cv7.md Бесплатно (free)

Отправка МД-шника текущей базы на определённый FTP

27.05.2009    9484    69    Токарь    4    

Перепроведение документов по последовательностям

Сервисные утилиты Обработка документов v8 1cv8.cf Бесплатно (free)

Перепроводим документы по последовательностям "Партионный учет..." и "Кадровый учет" за произвольный период УПП(1.2.22.3)

19.05.2009    10113    274    mosAdm    4    

Быстрое подключение большого количества баз 1Сv7.7 без внешних обработок и программ

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Экспортируя всего одну ветку системного реестра можно обойтись без внешних обработок и программбез внешних обработок и программ, и таким образом хранить и подключать неограниченное количество рабочих баз 1Сv7.7 и путей к ним. Будет удобно для администраторов, переустанавливающих, подключающих большое количество баз на компьютере пользователей.

11.05.2009    5686    184    Cent    13    

Установка монопольного или разделенного режима (8.0)

Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Бесплатно (free)

Установка монопольного или разделенного режима (1С 8.0)

04.05.2009    9251    119    gudun_ku    2    

Последняя секунда

Обработка документов Сервисные утилиты v8 1cv8.cf Бесплатно (free)

При закрытии месяца (года) , для корректного расчета себестоимости в последней секунде месяца хотелось бы видеть документы "Расчет себестоимости" и (или) "Корректировка стоимости списания", а лежит что попало. Эта обработка- простенький инструмент для переноса документов на секунду(и не только) назад (вперед).

30.04.2009    9973    212    mosAdm    6    

Еще одна загрузка файлов распределенной базы данных (РБД) через FTP

WEB Сервисные утилиты Распределенная БД (УРИБ, УРБД) v7.7 1cv7.md Бесплатно (free)

Эта простенькая программа позволяет неопытному пользователю, без лишних телодвижений принять выгрузку центральной базы (ЦБ). Программа создана для удаленных торговых точек, для замены Outlook+cmd.

17.04.2009    11288    236    petro_fm    7    

Восстановление последовательности расчетов по контрагентам (до контрагента и договора)

Обработка документов Сервисные утилиты Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 УПП1 Бесплатно (free)

Обработка «Восстановление состояния расчетов с контрагентами» В отличии от типовой можно отбирать контрагента и его договор и восстановить именно по этой аналитике расчетов! Обработка формирует проводки и движения специализированных регистров, связанные с погашением долга и зачетом аванса по расчетам с поставщиками и покупателями. ------------------------------------------------------------------------ 1С:Предприятие 8.1 "Управление производственным предприятием", редакция 1.2 ------------------------------------------------------------------------ Freeware

17.04.2009    33350    1499    manserg    51    

Перенос пользователей 77 -> 81

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

Переносит пользователей БД v77 в пользователи БД 81. Требуется библиотека UsersDef.dll. Запускается из 81.

10.04.2009    8632    194    babys    3    

Редактор записей регистров сведений и накоплений

Универсальные обработки Сервисные утилиты Инструментарий разработчика v8 1cv8.cf Бесплатно (free)

Не удалось мне найти обработки на эту тему с подобной реализацией. Пришлось написать самому. Хотелось бы ее доработать еще, но пока времени на это нет. Может кто разовьет идею, чтобы поднять себе рейтинг)

05.04.2009    25299    1183    json    7    

Мониторинг ключей защиты HASP

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

Внешний отчет, реализованный с помощью системы компоновки данных, отображает имеющиеся в сети ключи защиты HASP и распределение пользовательских лицензий.

31.03.2009    55051    3303    coder1cv8    87    

Удаленное администрирование списка баз в стандартном стартере 1С v7.7

Сервисные утилиты v7.7 1cv7.md Россия Бесплатно (free)

Скрипт для удаленного администрирования списка баз в стандартном стартере 1С v7.7 Когда юзеров 1С много и расстояния между ними существенные, управление списком запускаемых баз для каждого юзера напрягает.

24.03.2009    11006    417    zhurba    11    

Автоматическое изменение структуры конфигурации с помощью скрипта в формате AutoIT.

Сервисные утилиты v8 1cv8.cf Россия Бесплатно (free)

Обработка создает скрипт в формате AutoIT из текстовых файлов описания конфигурации. Данный скрипт осуществляет групповое изменение структуры справочников и документов с помощью эмуляции нажатий клавиш в конфигураторе.

13.03.2009    12694    202    K_A_O    4